从javaScript中学习正则表达式——RegExp

正则表达式工具:http://regexper.com   由于国外网络可以选择 https://github.com/javallone/regexper-static 离线安装作为本地服务。

正则表达式的创建方式:字面量(var reg = /\bis\b/gim)  构造函数(var  reg = new RegExp('/\bis\b/', 'g'))

正则表达式核心:1、原义文本字符(a, 1, 0, B)

                             2、元字符(* + ? $ ^ . | \ ( ) [ ] { } \t \n \v \w \W等等)

                             3、字符类(/[abcde]/g  /[^abcde]/g)

                             4、范围类(/[0-9a-z]/   /[0-8]/)

                             5、预定义类(. \d \D \s \S \w \W)

                             6、边界(^ $ \b \B)

                             7、量词(? + * {n} {n, m} {n,})

                             8、贪婪模式(/\d{3,6}/g)

                             9、非贪婪模式(/\d{3,6}?/g)

                            10、分组(使量词作用于分组)

                            11、或(/ad|da/g)

                            12、反向引用(根据$1, $2, $n获取分组内容。不希望捕获分组,在分组内加上(?:\d+))

                             13、前瞻(/\w(?=\d)/g)

                             14、RegExp对象的属性(global ignore case multiline lastIndex source)

                             15、RegExp对象的方法(reg.test(str)  reg.exec(str))

                             16、字符串对象的方法(str1.search(reg)  str1.match(reg)  str1.replace() str1.split(reg))

简单运用:

用一个正则表达式来判断一个字符串,只有aaaaa aaaa  bbbbbbbbb这类的字符串能通过   

/^([a-zA-Z0-9])\1*$/             \1表示对第一个分组的引用,如\m,是对第m个分组的引用

猜你喜欢

转载自www.cnblogs.com/huanqiuxuexiji/p/9054135.html