php专区

 首页 > php专区 > 正则表达式 > javascript正则表达式容易被忽略的小问题整理_正则

javascript正则表达式容易被忽略的小问题整理_正则

分享到:
【字体:
导读:
          小问题:lastIndex只对exec()和test()方法起作用,string.match(regexp)是不会影响regexp这个正则的lastIndex属性的,具体祥看本文...

一、中括号[]里面的特殊字符是不用转义的,例如[/]、[.]、[*]、[?]、[+]都是可以直接匹配对应的字符 . *?+。下面是测试结果:

所以,/[d.]/这个正则表达式实际上是匹配数字字符或者字符".",作用等同于/[d.]/

二、match()和exec()的区别

二者的区别主要在于正则表达式在设置了全局标识符g的情况。

如果没有设置全局标识符g,那么调用string.match(regexp)的结果和调用regexp.exec(string)的结果是相同的,

但在设置了全局标识符g时,string.match(regexp)会把所有的匹配都放入结果数组中,regexp.exec(string)的结果则只给出第一个成功的匹配。

而用regexp.lastIndex属性来记录下一次匹配开始的位置。测试如下:

PS:另外要注意的是lastIndex只对exec()和test()方法起作用,string.match(regexp)是不会影响regexp这个正则的lastIndex属性的。

分享到:
正则表达式概述 什么是正则表达式 ._正则...
正则表达式概述 正则表达式在程序设计语言中存在着广泛的应用,特别是用来处理字符串。如匹配字符串、查找字符串、替换字符串等。可以说,正则表达式是一段文本或一个公式,它是用来描述用某种模式去匹配一类字符串的公式,并且该公式具有一定的模式。 本小节将介绍正则表达式的基本概念、第一个正则表达式,以及测试正则表...
PHP preg_match的匹配多国语言的技巧_正...
正则:[\S]{2,32}过滤是管用的PHP中: 复制代码 代码如下:
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……