正则元字符
元字符:在正则表达式中有特殊含义的字符
单个数字和字符的元字符
- · 匹配单个的任意字符
- [] 匹配单个范围内的字符
- [ 0-9 ]
- { ^ 0 - 9 } 匹配任意一个除括号范围内的字符
- \w 匹配单个的数字字母下划线 等价于 [ 0-9a-zA-z ]
- \W 匹配单个的非数字字母下划线
- \d 匹配单个数字 等价于 [ 0-9 ]
- \D 匹配单个非数字 等价于 [^0-9]
// 元字符 ·
var str = "glaogle"
var box = /gl.ogle/
alert(box.test(str))
// 元字符 []
var str1 = "glaogl9"
var box1 = /glaogl[0-9]/
alert(box1.test(str1))
重复字符的元字符
重复字符 x (任意的单个字符)
- x? 匹配 0 个 或者 1个x
- x+ 匹配至少一个
- x* 匹配任意个x字符
- x{m,n} 最少匹配 m个,至多匹配n个
- x{n} 必须匹配n个x字符
- (xyz)+ 小括号括起来的当作字符串处理
var str = "goole"
var box = /goog?le/ // 匹配 0 或 1个 g 要么 有g 要么没有
alert(box.test(str)) // true
var str = "goog1le"
var box = /goog\d+le/ // 匹配 至少一个数字
alert(box.test(str)) // true
var str = "goog12556885555le"
var box = /goog\d*le/ // 匹配 至少一个数字
alert(box.test(str)) // true
// x{m,n} 最少匹配 m个,至多匹配n个
var str = "goog12556885555le"
var box = /goog\d{2,5}le/ // 匹配 至少2个 最多 5个
alert(box.test(str)) // true
var str = "googabcle"
var box = /goog(abc)+le/ // 匹配 abc 最少出现一次
alert(box.test(str)) // true
元字符 – 空白字符
- \s 匹配任意单个空白字符
- \S 匹配任意单个 非空白字符
var str = "goog\nle"
var box = /goog\sle/
alert(box.test(str))
喵字符
-
^ 以^开始的正则匹配
-
$ 以$结尾 正则匹配
// ^ 以^开始的正则匹配
var str = "da dad dad abc"
var box = /^da/
alert(box.test(str))
// $ 以$结尾 正则匹配
var str = "da dad dad abc"
var box = /abc$/
alert(box.test(str))