首页 > 代码库 > 正则表达式
正则表达式
^abc 要匹配的字符串以abc开头
abc$ 要匹配的字符串以abc结尾
abc 开头,结尾,中间都可以匹配
\b.....\b 要查找的字符串为一个完整的单词
\B.....\B 要查找的字符串不是一个完整的单词,且必须在原字符串的中间
[....] 一个方括号只能匹配一个字符
| 选择字符串,可理解为或,可匹配任意长度的字符。
- 连接符[a-zA-Z]
[^a-zA-Z] ^排除字符,放在[] 中表示不以什么开头
限定符:? 匹配前面的字符0次或1次
+ 匹配前面的字符1次或多次
* 匹配前面的字符0次或多次
{n} 匹配前面的字符n次
{n,} 最少匹配n次
{n,m} 最少匹配n次,最多匹配m次
. 点号 匹配一个字符,除了\n \r
\ 转义字符
注意:\n是新起一行;\r是回到行首;\f是换页符;\t水平制表符
\d 任意一个十进制数[0-9]
\D 非十进制数
\s 匹配(查找)一个空白字符 \f,\t,\n,\r,垂直换行符
\S 匹配一个非空白字符
\w 查找单词字符 a-z A-Z 0-9 _
\W 查找非单词字符
() 小括号,1、改变限定符的作用范围
2、分组,对括号内的表达式进行重复操作
(?: ... ) 非获取匹配,不重复括号内的操作
(?= ... ) 正向匹配预查 如:windows(?=95|98|2000) 可以查Windows 2000
不可以查windows 3.1
(?! ... ) 正向否定预查 和上边的刚好相反 如:windows(?=95|98|2000) 不可以查Windows 2000
可以查windows 3.1
\1\2 反向引用 ([a-z][A-Z])\1\2
i 忽略大小写
g 全局搜索
正则表达式