正则表达式的字符解释

\ : 转义符。例如,’n’ 匹配字符 ”n”,而 ’\n’ 匹配一个换行符。 ’\\’匹配 “\”。

^ : 匹配输入字符串的开始位置。

$ : 匹配输入字符串的结束位置。

+ : 代表前面的字符可以出现一次或多次。例如,runoo+b,可以匹配 runoobrunooobrunoooooob 等。

* : 代表前面的字符可以出现零次或多次。runoo+b,可以匹配 runoobrunooobrunoooooob 等。

?:代表前面的字符最多只可以出现一次(0次或1次)。colou?r 可以匹配 color 或者 colour

{n}:匹配确定的n次。例如,‘0{2}’不能匹配“Bob”中的‘o’,但是能匹配“food”中的‘oo’。

{n,}:至少匹配n次。

{n, m}n <= m,最少匹配n次且最多匹配m次。

?:当该字符紧跟在任何一个其他限制符(*+,?,{n}{n, m})后面时,匹配模式是非贪婪的。尽可能少的匹配所搜索的字符串,例如,对于字符串“oooo”,‘o+?’将匹配单个‘o’,而‘o+’将匹配所有‘o’。

. 匹配除换行符(\n、\r)之外的任何单个字符。要匹配包括 '\n' 在内的任何字符,请使用像"(.|\n)"的模式。

x | y:匹配xy

[xyz]:字符集合。匹配所包含的任意一个字符。例如,‘[abc]’可以匹配“plain”中的‘a’。

[^xyz]:负值字符集合。匹配未包含的任意字符。例如,‘[^abc]’可以匹配“plain”中的‘p’、‘l’、‘i’、‘n’。

[a-z]:匹配指定范围内的任意字符。

[^a-z]:匹配任何不在指定范围内的任意字符。

\b:匹配一个单词边界,即单词和空格间的位置。例如,‘er\b’可以匹配“never”中的‘er’,但不能匹配“verb”中的‘er’。

\B:匹配一个非单词边界。例如,‘er\b’不能匹配“never”中的‘er’,但可以匹配“verb”中的‘er’。

\d:匹配一个数字字符。等价于[0-9]。

\D:匹配一个非数字字符。等价于[^0-9]。

\f:匹配一个换页符。

\n:匹配一个换行符。

\r:匹配一个回车符。

\s:匹配任何空白字符。

\S:匹配任何非空白字符。

\t:匹配一个制表符。

\v:匹配一个垂直制表符。

\w:匹配字母、数字、下划线。等价于[A-Za-z0-9_]。

\W:匹配非字母、数字、下划线。等价于[^A-Za-z0-9_]。

猜你喜欢

转载自blog.csdn.net/w_mi123/article/details/80065353