常用正则表达式例子
部分内容(其实是全部)来自https://deerchao.net/tutorials/regex/regex.htm#getstarted
元字符系列:
\bhi\b //匹配 hi 这个单词 \b 表示单词的分界处。
\bhi\b.*\bLucy\b //匹配hi后面跟着一个lucy字符串,“.”表示任意字符,“*”表示前面内容出现任意次,也就是“.”出现任意次。
0\d\d-\d\d\d\d\d\d\d\d //匹配以0开头的三位数字:0xx-xxxxxxxx。横杠即为横杠。
也可写成 :0\d{2}-\d{8}
^\d{5,12}$ //整个字符串必须在5-12位数字之间,"^"表示字符串开始处,“$”表示字符串结束处。
\. \* \$ \\ //表示. * $ \ 在元字符前加上\来表示它本身,
(\d{1,3}\.){3} //分组,将1至3个数字加上一个.重复三遍。例如12.123.15.
限定符系列:
* | 重复零次或更多次 |
+ | 重复一次或更多次 |
? | 重复零次或一次 |
{n} | 重复n次 |
{n,} | 重复n次或更多次 |
{n,m} | 重复n到m次 |
字符类:(可自定义,元素可匹配方框内任意一种)
[aeiou] //匹配任何一个英文元音字母
[.?!] //匹配标点符号(.或?或!)。
分支条件:
| //用|来将多种匹配条件合在一起
反义:
代码/语法 | 说明 |
---|---|
\W | 匹配任意不是字母,数字,下划线,汉字的字符 |
\S | 匹配任意不是空白符的字符 |
\D | 匹配任意非数字的字符 |
\B | 匹配不是单词开头或结束的位置 |
[^x] | 匹配除了x以外的任意字符 |
[^aeiou] | 匹配除了aeiou这几个字母以外的任意字符 |