2016.06.15廖雪峰JS__学习笔记(正则表达式)__P6

来源:互联网 发布:淘宝上拍卖的车怎么样 编辑:程序博客网 时间:2024/09/21 09:05

1

要匹配变长的字符,在正则表达式中,用*表示任意个字符(包括0个),用+表示至少一个字符,用?表示0个或1个字符,用{n}表示n个字符,用{n,m}表示n-m个字符:

2

如果正则表达式中定义了组,就可以在RegExp对象上用exec()方法提取出子串来。

3

切分:split()

4

正则匹配默认是贪婪匹配,也就是匹配尽可能多的字符。

必须让\d+采用非贪婪匹配(也就是尽可能少匹配),才能把后面的0匹配出来,加个?就可以让\d+采用非贪婪匹配:

var re = /^(\d+?)(0*)$/;re.exec('102300'); // ['102300', '1023', '00']

5

全局搜索

JavaScript的正则表达式还有几个特殊的标志,最常用的是g,表示全局匹配:

var r1 = /test/g;// 等价于:var r2 = new RegExp('test', 'g');
全局匹配可以多次执行exec()方法来搜索一个匹配的字符串。
当我们指定g标志后,每次运行exec(),正则表达式本身会更新lastIndex属性,表示上次匹配到的最后索引:









0 0