在Python中,正则表达式是一种强大的工具,用于在文本中搜索匹配特定模式的字符串。以下是一个简单的表格,列出了Python正则表达式的一些基本语法和描述。
Python正则表达式语法 | 正则表达式描述 |
---|---|
\d | 匹配任何数字字符,等价于[0-9]。 |
\D | 匹配任何非数字字符,等价于[^0-9]。 |
\w | 匹配任何字母、数字或下划线字符,等价于[a-zA-Z0-9_]。 |
\W | 匹配任何非字母、数字或下划线字符,等价于[^a-zA-Z0-9_]。 |
\s | 匹配任何空白字符,包括空格、制表符、换页符等等。 |
\S | 匹配任何非空白字符。 |
. | 匹配除换行符(\n)之外的任何单个字符。 |
* | 匹配前面的子表达式零次或多次。例如,zo* 能匹配 "z" 以及 "zoo"。 |
+ | 匹配前面的子表达式一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。 |
? | 匹配前面的子表达式零次或一次。例如,'do(es)?' 可以匹配 "do" 或 "does"。 |
\b | 匹配一个单词边界,也就是字与空白间的位置。例如,'er\b' 可以匹配"never"中的'er',但不能匹配"verb"中的'er'。 |
\B | 匹配非单词边界的位置。\B 会匹配一个位置,该位置的两侧都是单词字符。例如,"er\B"能匹配"verb"中的'b'。 |
\cx | 匹配由 x 指明的控制字符。例如,\cK 匹配 Ctrl+K 字符。 |
\n | 匹配一个换行符(\n)。在这个模式中,它等价于 \r\n(在Unix/Linux环境中)或 \r(在Windows环境中)。这是预定义的。 |
\r\n 或 \r | 匹配一个回车后跟一个换行符(在Windows环境中)或一个回车(在Unix/Linux环境中)。这是预定义的。 |
\t | 匹配一个制表符(tab)。这是预定义的。 |
\v | 匹配一个垂直制表符(Vertical Tab,即 vt)。这是预定义的。 |
\xHH 或 \x | 匹配一个由两个十六进制数 HH 表示的字符代码。例如,"\x41" 匹配 'A'。"\x{20}" 匹配空格字符(Space)。这是预定义的。 |