字符 | 描述 |
---|---|
\ | 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符 |
^ | 表示语句的开头 |
$ | 表示语句的结尾 |
* | 匹配前面的字符零次或多次,例: zo*可以匹配 ‘z’ 、‘zoo’,等同于{0, } |
+ | 匹配前面的字符一次或多次,例: zo*可以匹配 ‘zo’ 、‘zoo’, 不能匹配 ‘z’,等同于{1, } |
? | 匹配前面的字符零次或一次,例: do(es)*可以匹配 ‘do’ 、‘dose’,等同于{0, 1} 当该字符跟随在任何一个其他限制符后面时,匹配模式是非贪婪的 。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如,对于字符串 “oooo”,‘o+?’ 将匹配单个 “o”,而 ‘o+’ 将匹配所有 ‘o’。 |
· | 匹配除换行符之外的任何单个字符,要匹配/n的话,使用(.|\n) 的模式 |
(pattern) | 匹配并获取结果 |
(?:pattern) | 匹配但不获取结果,非获取匹配,不进行存储供以后使用 |
(?=pattern) | 正向肯定预查,在任何匹配pattern的字符串开始处匹配查找字符串,非获取匹配,不进行存储供以后使用 |
(?!=pattern) | 正向否定预查,在任何不匹配pattern的字符串开始处匹配查找字符串,非获取匹配,不进行存储供以后使用 |
(?<=pattern) | 反向肯定预查 |
(?!<=pattern) | 反向否定预查 |
\d | 匹配数字 |
\D | 匹配非数字 |
\s | 匹配空格 |
\n | 匹配换行符 |
\w | 匹配数字,字母,下划线, 等同于[a-zA-Z0-9_] |
\W | 匹配非数字,字母,下划线[^a-zA-Z0-9_] |
正则表达式常用元字符
最新推荐文章于 2023-05-11 18:54:57 发布