JavaScript中的正则表达式
一 定义一个正则表达式 :
两种表达方式:
var reg = new RegExp("cat","gi");
var reg = /cat/gi
常用的方法 :
test : RegExp.$1等反向引用
exec
match
search
replace : $1 ...可以反向引用
slice
match和exec的区别 : 都是完成匹配字符串功能
调用的对象和传递的参数不一样
返回的都是一个数组 但是数组的内容不一样
二 简单模式
元字符 : 有特殊函数的字符 . ? + * ( { [ \ . | $ 等
字符类 :
简单类 : []
负向类 : 使用^
预定义类 : \d \D \s \S \w \W .
范围类 : [1-9]
组合类 : [-1-9a-f]
量词 :
简单量词 : {n} {n,m} {n,} + * ?
描述性量词
默认情况下应该是惰性匹配
三 复杂模式
分组 : ()
反向引用 : 三种情况可以使用反向引用 : 从左向右的第一个括号 $1 依次类推
test函数
replace函数
正则表达式中
候选 : var reg = /a|b/
非捕获性 : (?:******)不用进行存贮效率比较高
边界 : ^ $
四 三种括号
() : 表示分组 可以理解为对一个字符序列进行操作
[] :
字符类 括号中的所以字符都可以匹配
范围类 [1-4] 匹配数字一到四
可以将上面两种进行组合
{} : 量词 匹配出现的次数