一、元字符
“^” :^字符串的起始位置。
“$” :$会匹配字符串的结尾
文本: hello world!
正则: ^hello w
结果:
文本:hello world
正则:ld$
结果:
“\b” :不会消耗任何字符只匹配一个位置,例子中匹配出is所在的位置
文本:this is a test
正则:\bis\b
效果图:
“\d”: 匹配数字
文本:1362228888
正则:\d\d\d
效果图:
“\w”:匹配字母,数字,下划线.
文本:hello_136_zw
正则:\w
效果图:
“\s”:匹配空格
文本:hello zw
正则:\s
效果图:
“.”:匹配除了换行符以外的任何字符
文本:hello zw
正则:.
效果图:
“[abc]”: 字符组 匹配包含括号内元素的字符
文本:hello zw
正则:[hllo]
效果图:
“\W” 匹配任意不是字母,数字,下划线 的字符
“\S” 匹配任意不是空白符的字符
“\D” 匹配任意非数字的字符
“\B” 匹配不是单词开头或结束的位置
“[^abc]” 匹配除了abc以外的任意字符
文本:hellozw
正则:[^hllo]
效果图:
重复次数匹配:
“*”(贪婪) 重复零次或更多
aaaaaaaa => a*
“+”(懒惰) 重复一次或更多次
aaaaaaaa => a+
“?”(占有) 重复零次或一次
aaaaaaaa => a?
“{n,m}” 重复n到m次
aaaaaaaa => a{1,6}
“{n,}” 重复n次或更多次
aaaaaaaa => a{1,}
懒惰限定符
“*?” 重复任意次,但尽可能少重复
文本:acbacbbc
正则:a.*?b
效果图:
“(?=xxx)” 匹配xxx前面的位置
文本:How are you doing
正则:.*?(?=ing)
匹配结果: How are you do