正则表达式基础:JavaScript 实现基础 正则表达式来源: 发布时间:星期一, 2009年9月7日 浏览:77次 评论:0
JavaScript通过RegExp类来支持正则表达式举个最简单例子:
复制代码 代码如下: var regApple = RegExp("apple"); 它可以匹配个串中出现第个"apple"串并且对大小写敏感在构造思路方法中加入第 2个参数"g"则代表搜索出串中所有 "apple"这里"g"代表"global"如果第 2个参数为"i"则代表着-insensitive匹配过程中将不考虑字母大小写将上述两者综合起来可以搜索出所有"apple"串并且不考虑大小写问题 复制代码 代码如下: var regApple = RegExp("apple", "gi"); 正则表达式有着并不唯表示思路方法使用Perl语言中语法可以将上述表达式表示为: 复制代码 代码如下: var regApple = /apple/gi; 创建了个RegExp对象后RegExp思路方法可以构造出区别匹配方式正则表达式是对串进行操作所以String些思路方法在构造正则表达式过程中也扮演着重要角色 RegExp对象思路方法 复制代码 代码如下: var sampleString = "Greenapple"; var regApple = /apple/; alert(regApple.test(sampleString)); 上面代码输出结果是"true"sampleString中包含了需要匹配串"apple"这是最简单检测方式有时我们需要知道匹配详细结果例如: 复制代码 代码如下: var sampleString = "green apples, red apples"; var regApple = /apple/g; var arr = regApple.exec(sampleString); 通过使用exec思路方法返回arr是有关匹配结果个包括每个匹配值及其所在段例如上例中是"green apples"还是"red apples"match思路方法有着和exec相同功能只是表达方式区别: 复制代码 代码如下: var sampleString = "green apples, red apples"; var regApple = /apple/g; var arr = sampleString.match(regApple); search思路方法和indexOf比较类似返回第个匹配串所在位置: 复制代码 代码如下: var sampleString = "green apples, red apples"; var regApple = /apple/gi; alert(sampleString.search(regApple)); //输出"6" String思路方法 Stringreplace思路方法可以将指定串替换为另个串: 复制代码 代码如下: var sampleString = "There is a green apple."; alert(sampleString.replace("green", "red")); //输出"There is a red apple." 将replace第个参数替换为个正则表达式可以达到同样效果: 复制代码 代码如下: var sampleString = "There is a green apple."; var regApple = /apple/; alert(sampleString.replace(regApple, "red")); //输出"There is a red apple." replace第 2个参数可以替换为个function该function接受个匹配串作为参数返回个替换串(存在疑问) 使用正则表达式可以实现Stringsplit思路方法相同功能 复制代码 代码如下: var fruit = "apple,pear,lemon"; var arr = fruit.split(","); 使用正则表达式: 复制代码 代码如下: var fruit = "apple,pear,lemon"; var reg = /\,/; var arr = fruit.split(reg); 0
相关文章读者评论发表评论 |