JS正则表达式详解

JavaScript011

JS正则表达式详解,第1张

在H5开发中,正则表达式有很多地方都用得到,固整理了正则表达式的基本规则,和在JS中如何使用正则表达式,做了简单的介绍。

当 RegExpObject 是一个全局正则表达式时,exec() 的行为就稍微复杂一些。它会在RegExpObject的 lastIndex属性指定的字符处开始检索字符串 string。当 exec()找到了与表达式相匹配的文本时,在匹配后,它将把 RegExpObject 的 lastIndex 属性设置为匹配文本的最后一个字符的下一个位置。这就是说,您可以通过反复调用 exec() 方法来遍历字符串中的所有匹配文本。当exec() 再也找不到匹配的文本时,它将返回null,并把lastIndex 属性重置为 0。

eg:全局正则表达式

本篇主要针对正则基础的阐述,如果希望在熟练地应用到开发中还需要多多练习。

亲爱的读者朋友,如果你点开了这篇文章,说明你对正则很感兴趣。

想必你也了解正则的重要性,在我看来正则表达式是衡量程序员水平的一个侧面标准。

关于正则表达式的教程,网上也有很多,相信你也看了一些。

与之不同的是,本文的目的是希望所有认真读完的童鞋们,都有实质性的提高。

本文内容共有七章,用JavaScript语言完整地讨论了正则表达式的方方面面。

如果觉得文章某块儿没有说明白清楚,欢迎留言,能力范围之内,老姚必做详细解答。

构造正则表达式的方法和创建数学表达式的方法一样。也就是用多种元字符与运算符可以将小的表达式结合在一起来创建更大的表达式。正则表达式的组件可以是单个的字符、字符集合、字符范围、字符间的选择或者所有这些组件的任意组合。

正则表达式是由普通字符(例如字符 a 到 z)以及特殊字符(称为"元字符")组成的文字模式。模式描述在搜索文本时要匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。

g是global,全局的意思,比如有一规则是否找到一个就结束,还是要找到所有匹配。

p已经是一个正则式了,可以这样定义:p=/^\d+$/g然后直接p.test(a)

因为p已经是正则式,所以new RegExp(),不能重复定义是否全局,否则会与p本身定义有冲突。如果new RegExp()带的参数是个字符串, p ='^\\d+$'则可以加‘g’参数。