<regular expressions>
需要转义的元字符(metacharactes)
$ ( ) * + . ? [ \ ^ { |
Note: 并不包括右方括号],连字符-和右花括号}。]与-只在有 [ 的情况下才成为metacharacters,而 } 只在没有转义的 { 之后才是 metacharacters。[与]之间也有它自己的转义规则。
不区分大小写的匹配
(?i)hello
: 匹配hello, HeLLo等。
匹配多个字符之一
[a-fA-F0-9]
: 匹配十六进制字符串
[^a-fA-F0-9]
: 匹配非十六进制字符串
[asdf]
: 匹配asdf字符中任意一个
在[与]中,只有4个字符拥有特殊功能:\ ^ - ]
[\r\n
] : 匹配回车符或换行符
简写
[\d]
or \d
: 匹配单个数字
[\D]
or \d
: 不匹配单个数字,等价于[^\d]
[\w
: 匹配单个单词字符(word character),一般包括变量命名的合法字符。
[\s]
: 匹配任意whitespace character。
匹配任意字符
.
: 匹配任意字符(有选项是否匹配换行符)
匹配文本开始或结尾(定位符 Anchor)
\A
: 整个文本开始,如\AWelcome
匹配字符串开头的Welcome字符串。
\Z
: 整个文本结束处
^begin
: 一行开始(需要打开选项:^
和$
匹配换行处)
end$
: 一行结尾处end单词
Reference
正则表达式经典实例. Jan Goyvaerts & Steven Levithan, 郭耀译。