ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:23.58KB ,
资源ID:4534155      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4534155.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(js里replace方法.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

js里replace方法.docx

1、js里replace方法javascript replace()方法的简单应用replace()最简单的算是能力就是简单的字符替换。示例代码如下:var strM = javascript is a good script language;/在此我想将字母a替换成字母Aalert(strM.replace(a,A);它只替换了首字母。但如果加上正则表达式结果就不一样了!replace()支持正则表达式,它可以按照正则表达式的规则匹配字符或字符串,然后给予替换!注意:被替换的部分不用加双引号.javascript replace()方法的正则替换:var strM = javascript i

2、s a good script language;/在此我想将字母a替换成字母Aalert(strM.replace(/a/,A);这样还是只替换了第一个字母a。var strM = javascript is a good script language;/在此将字母a全部替换成字母Aalert(strM.replace(/a/g,A);由上可知,当正则表达式有g标志时,代表将处理整个字符串.var strM = javascript is a good script language;alert(strM.replace(/(javascript)s*(is)/g,$1 $2 fun. i

3、t $2);javascript replace()方法正则实例:先看看简单例子:将所有单词首字母换成大写。var strM = javascript is a good script language;function change(word)return word.indexOf(0).toUpperCase()+word.substring(1);alert(strM.replace(/bw+b/g,change);由上可知,当正则表达式有g标志时,代表将处理整个字符串,即函数change的变换将应用于所有匹配的对象。而该函数有三个或更多参数,具体个数视正则表达式而定。有了函数与正则表达

4、式的配合,replace()处理字符串的功能空前强大起来了!javascript replace()方法实现倒序:最后还举个例子,将字符串所有单词倒序,用replace()处理是如此简单。var strM = javascript is a good script language;function change(word)var result = word.match(/(w)/g);if ( result )var str = ; for ( var i=result.length-1; i=0; i- ) str += result;return str;else return null

5、;alert(strM.replace(/b(w)+b/g,change); 附:正则表达式使用详解 简介 简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具。其作用如下: 测试字符串的某个模式。例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用卡号码模式。这称为数据有效性验证。 替换文本。可以在文档中使用一个正则表达式来标识特定文字,然后可以全部将其删除,或者替换为别的文字。 根据模式匹配从字符串中提取一个子字符串。可以用来在文本或输入字段中查找特定文字。 基本语法 在对正则表达式的功能和作用有了初步的了解之后,我们就来具体看一下正则表达式的语法格

6、式。 正则表达式的形式一般如下: /love/其中位于“/”定界符之间的部分就是将要在目标对象中进行匹配的模式。用户只要把希望查找匹配对象的模式内容放入“/”定界符之间即可。为了能够使用户更加灵活的定制模式内容,正则表达式提供了专门的“元字符”。所谓元字符就是指那些在正则表达式中具有特殊意义的专用字符,可以用来规定其前导字符(即位于元字符前面的字符)在目标对象中的出现模式。 较为常用的元字符包括: “+”, “*”,以及 “?”。 “+”元字符规定其前导字符必须在目标对象中连续出现一次或多次。 “*”元字符规定其前导字符必须在目标对象中出现零次或连续多次。 “?”元字符规定其前导对象必须在目标

7、对象中连续出现零次或一次。 下面,就让我们来看一下正则表达式元字符的具体应用。 /fo+/因为上述正则表达式中包含“+”元字符,表示可以与目标对象中的 “fool”, “fo”, 或者 “football”等在字母f后面连续出现一个或多个字母o的字符串相匹配。 /eg*/因为上述正则表达式中包含“*”元字符,表示可以与目标对象中的 “easy”, “ego”, 或者 “egg”等在字母e后面连续出现零个或多个字母g的字符串相匹配。 /Wil?/因为上述正则表达式中包含“?”元字符,表示可以与目标对象中的 “Win”, 或者“Wilson”,等在字母i后面连续出现零个或一个字母l的字符串相匹配。

8、 有时候不知道要匹配多少字符。为了能适应这种不确定性,正则表达式支持限定符的概念。这些限定符可以指定正则表达式的一个给定组件必须要出现多少次才能满足匹配。 n n 是一个非负整数。匹配确定的 n 次。例如,o2 不能匹配 Bob 中的 o,但是能匹配 food 中的两个 o。 n, n 是一个非负整数。至少匹配 n 次。例如,o2, 不能匹配 Bob 中的 o,但能匹配 foooood 中的所有 o。o1, 等价于 o+。o0, 则等价于 o*。 n,m m 和 n 均为非负整数,其中n = m。最少匹配 n 次且最多匹配 m 次。例如,o1,3 将匹配 fooooood 中的前三个 o。o0

9、,1 等价于 o?。请注意在逗号和两个数之间不能有空格。 除了元字符之外,用户还可以精确指定模式在匹配对象中出现的频率。例如,/jim 2,6/ 上述正则表达式规定字符m可以在匹配对象中连续出现2-6次,因此,上述正则表达式可以同jimmy或jimmmmmy等字符串相匹配。 在对如何使用正则表达式有了初步了解之后,我们来看一下其它几个重要的元字符的使用方式。 code s:用于匹配单个空格符,包括tab键和换行符; S:用于匹配除单个空格符之外的所有字符; d:用于匹配从0到9的数字; w:用于匹配字母,数字或下划线字符; W:用于匹配所有与w不匹配的字符; . :用于匹配除换行符之外的所有字

10、符。 /code (说明:我们可以把s和S以及w和W看作互为逆运算) 下面,我们就通过实例看一下如何在正则表达式中使用上述元字符。 /s+/ 上述正则表达式可以用于匹配目标对象中的一个或多个空格字符。 /d000/如果我们手中有一份复杂的财务报表,那么我们可以通过上述正则表达式轻而易举的查找到所有总额达千元的款项。 除了我们以上所介绍的元字符之外,正则表达式中还具有另外一种较为独特的专用字符,即定位符。定位符用于规定匹配模式在目标对象中的出现位置。 较为常用的定位符包括: “”, “$”, “b” 以及 “B”。 code “”定位符规定匹配模式必须出现在目标字符串的开头 “$”定位符规定匹配

11、模式必须出现在目标对象的结尾 “b”定位符规定匹配模式必须出现在目标字符串的开头或结尾的两个边界之一 “B”定位符则规定匹配对象必须位于目标字符串的开头和结尾两个边界之内, 即匹配对象既不能作为目标字符串的开头,也不能作为目标字符串的结尾。 /code 同样,我们也可以把“”和“$”以及“b”和“B”看作是互为逆运算的两组定位符。举例来说: /hell/因为上述正则表达式中包含“”定位符,所以可以与目标对象中以 “hell”, “hello”或“hellhound”开头的字符串相匹配。 /ar$/因为上述正则表达式中包含“$”定位符,所以可以与目标对象中以 “car”, “bar”或 “ar”

12、 结尾的字符串相匹配。 /bbom/因为上述正则表达式模式以“b”定位符开头,所以可以与目标对象中以 “bomb”, 或 “bom”开头的字符串相匹配。/manb/因为上述正则表达式模式以“b”定位符结尾,所以可以与目标对象中以 “human”, “woman”或 “man”结尾的字符串相匹配。 为了能够方便用户更加灵活的设定匹配模式,正则表达式允许使用者在匹配模式中指定某一个范围而不局限于具体的字符。例如: code /A-Z/上述正则表达式将会与从A到Z范围内任何一个大写字母相匹配。 /a-z/上述正则表达式将会与从a到z范围内任何一个小写字母相匹配。 /0-9/ 上述正则表达式将会与从0

13、到9范围内任何一个数字相匹配。 /(a-zA-Z0-9)+/上述正则表达式将会与任何由字母和数字组成的字符串,如 “aB0” 等相匹配。 /code 这里需要提醒用户注意的一点就是可以在正则表达式中使用 “()” 把字符串组合在一起。“()”符号包含的内容必须同时出现在目标对象中。因此,上述正则表达式将无法与诸如 “abc”等的字符串匹配,因为“abc”中的最后一个字符为字母而非数字。 如果我们希望在正则表达式中实现类似编程逻辑中的“或”运算,在多个不同的模式中任选一个进行匹配的话,可以使用管道符 “|”。例如:/to|too|2/上述正则表达式将会与目标对象中的 “to”, “too”, 或

14、 “2” 相匹配。 正则表达式中还有一个较为常用的运算符,即否定符 “”。与我们前文所介绍的定位符 “” 不同,否定符 “”规定目标对象中不能存在模式中所规定的字符串。例如:/A-C/上述字符串将会与目标对象中除A,B,和C之外的任何字符相匹配。一般来说,当“”出现在 “”内时就被视做否定运算符;而当“”位于“”之外,或没有“”时,则应当被视做定位符。 最后,当用户需要在正则表达式的模式中加入元字符,并查找其匹配对象时,可以使用转义符“”。例如:/Th*/ 上述正则表达式将会与目标对象中的“Th*”而非“The”等相匹配。 在构造正则表达式之后,就可以象数学表达式一样来求值,也就是说,可以从左

15、至右并按照一个优先级顺序来求值。优先级如下: code 1 转义符 2(), (?:), (?=), 圆括号和方括号 3*, +, ?, n, n, n,m 限定符 4, $, anymetacharacter 位置和顺序 5|“或”操作 /code 使用实例 在JavaScript 1.2中带有一个功能强大的RegExp()对象,可以用来进行正则表达式的匹配操作。其中的test()方法可以检验目标对象中是否包含匹配模式,并相应的返回true或false。 我们可以使用JavaScript编写以下脚本,验证用户输入的邮件地址的有效性。 code /code 正则表达式对象 本对象包含正则表达式

16、模式以及表明如何应用模式的标志。 code 语法 1 re = /pattern/flags 语法 2 re = new RegExp(pattern,flags) /code 参数 re 必选项。将要赋值为正则表达式模式的变量名。 Pattern 必选项。要使用的正则表达式模式。如果使用语法 1,用 / 字符分隔模式。如果用语法 2,用引号将模式引起来。 Flags 可选项。如果使用语法 2 要用引号将 flag 引起来。标志可以组合使用,可用的有: code g (全文查找出现的所有 pattern) i (忽略大小写) m (多行查找) /code 示例 下面的示例创建一个包含正则表达式

17、模式及相关标志的对象(re),向您演示正则表达式对象的用法。在本例中,作为结果的正则表达式对象又用于 match 方法中: code function MatchDemo() var r, re; / 声明变量。 var s = The rain in Spain falls mainly in the plain; re = new RegExp(ain,g); / 创建正则表达式对象。 r = s.match(re); / 在字符串 s 中查找匹配。 return(r); /code 返回值: ain,ain,ain,ain 属性 lastIndex 属性 | source 属性 方法 c

18、ompile 方法 | exec 方法 | test 方法 要求 版本 3 请参阅 RegExp 对象 | 正则表达式语法 | String 对象 exec 方法 用正则表达式模式在字符串中运行查找,并返回包含该查找结果的一个数组。 rgExp.exec(str) 参数 rgExp 必选项。包含正则表达式模式和可用标志的正则表达式对象。 str 必选项。要在其中执行查找的 String 对象或字符串文字。 说明 如果 exec 方法没有找到匹配,则它返回 null。如果它找到匹配,则 exec 方法返回一个数组,并且更新全局 RegExp 对象的属性,以反映匹配结果。数组的0元素包含了完整的匹

19、配,而第1到n元素中包含的是匹配中出现的任意一个子匹配。这相当于没有设置全局标志 (g) 的 match 方法。 如果为正则表达式设置了全局标志,exec 从以 lastIndex 的值指示的位置开始查找。如果没有设置全局标志,exec 忽略 lastIndex 的值,从字符串的起始位置开始搜索。 exec 方法返回的数组有三个属性,分别是 input、index 和 lastIndex。Input 属性包含了整个被查找的字符串。Index 属性中包含了整个被查找字符串中被匹配的子字符串的位置。LastIndex 属性中包含了匹配中最后一个字符的下一个位置。 示例 下面的例子举例说明了 exe

20、c 方法的用法: code function RegExpTest() var ver = Number(ScriptEngineMajorVersion() + . + ScriptEngineMinorVersion() if (ver = 5.5) / 测试 JScript 的版本。 var src = The rain in Spain falls mainly in the plain.; var re = /w+/g; / 创建正则表达式模式。 var arr; while (arr = re.exec(src) != null) document.write(arr.index

21、+ - + arr.lastIndex + arr + t); else alert(请使用 JScript 的更新版本); /code 返回值:0-3The 4-8rain 9-11in 12-17Spain 18-23falls 24-30mainly 31-33in 34-37the 38-43plain test 方法 返回一个 Boolean 值,它指出在被查找的字符串中是否存在模式。 rgexp.test(str) 参数 rgexp 必选项。包含正则表达式模式或可用标志的正则表达式对象。 str 必选项。要在其上测试查找的字符串。 说明 test 方法检查在字符串中是否存在一个模式

22、,如果存在则返回 true,否则就返回 false。 全局 RegExp 对象的属性不由 test 方法来修改。 示例 下面的例子举例说明了 test 方法的用法: code function TestDemo(re, s) var s1; / 声明变量。 / 检查字符串是否存在正则表达式。 if (re.test(s) / 测试是否存在。 s1 = contains ; / s 包含模式。 else s1 = does not contain ; / s 不包含模式。 return( + s + + s1 + + re.source + ); / 返回字符串。 /code 函数调用:docu

23、ment.write (TestDemo(/ain+/ ,The rain in Spain falls mainly in the plain.); 返回值:The rain in Spain falls mainly in the plain. contains ain+ match 方法 使用正则表达式模式对字符串执行查找,并将包含查找的结果作为数组返回。 stringObj.match(rgExp) 参数 stringObj 必选项。对其进行查找的 String 对象或字符串文字。 rgExp 必选项。为包含正则表达式模式和可用标志的正则表达式对象。也可以是包含正则表达式模式和可用标志

24、的变量名或字符串文字。 说明 如果 match 方法没有找到匹配,返回 null。如果找到匹配返回一个数组并且更新全局 RegExp 对象的属性以反映匹配结果。 match 方法返回的数组有三个属性:input、index 和 lastIndex。Input 属性包含整个的被查找字符串。Index 属性包含了在整个被查找字符串中匹配的子字符串的位置。LastIndex 属性包含了最后一次匹配中最后一个字符的下一个位置。 如果没有设置全局标志 (g),数组的 0 元素包含整个匹配,而第 1 到 n 元素包含了匹配中曾出现过的任一个子匹配。这相当于没有设置全局标志的 exec 方法。如果设置了全局

25、标志,元素 0 到 n 中包含所有匹配。 示例 下面的示例演示了match 方法的用法: code function MatchDemo() var r, re; / 声明变量。 var s = The rain in Spain falls mainly in the plain; re = /ain/i; / 创建正则表达式模式。 r = s.match(re); / 尝试匹配搜索字符串。 return(r); / 返回第一次出现 ain 的地方。 /code 返回值:ain 本示例说明带 g 标志设置的 match 方法的用法。 code function MatchDemo() var

26、 r, re; / 声明变量。 var s = The rain in Spain falls mainly in the plain; re = /ain/ig; / 创建正则表达式模式。 r = s.match(re); / 尝试去匹配搜索字符串。 return(r); / 返回的数组包含了所有 ain / 出现的四个匹配。 /code 返回值:ain,ain,ain,ain 上面几行代码演示了字符串文字的 match 方法的用法。 code var r, re = Spain; r = The rain in Spain.replace(re, Canada); return r; /c

27、ode 返回值:The rain in Canada search 方法 返回与正则表达式查找内容匹配的第一个子字符串的位置。 stringObj.search(rgExp) 参数 stringObj 必选项。要在其上进行查找的 String 对象或字符串文字。 rgExp 必选项。包含正则表达式模式和可用标志的正则表达式对象。 说明 search 方法指明是否存在相应的匹配。如果找到一个匹配,search 方法将返回一个整数值,指明这个匹配距离字符串开始的偏移位置。如果没有找到匹配,则返回 -1。 示例 下面的示例演示了 search 方法的用法。 code function SearchDemo() var r, re; / 声明变量。 var s = The rain in Spain falls mainly in the plain.; re = /falls/i; / 创建正则表达式模式。 r = s.search(re); / 查找字符串。 return(r); / 返回 Boolean 结果。 /code 返回值:18 正则表达式语法 一个正则表

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1