概括字符集有很多,下面就列出比较常用的:
\d
匹配一个数字字符,等价于[0-9]
import re
a = 'Pyth3 o 9n'
r = re.findall('\d', a)
print(r)
---------------------------------------------
输出:
['3', '9']
\D
匹配一个非数字字符,等价于[^0-9]
import re
a = 'Pyth3 o 9n'
r = re.findall('\D', a)
print(r)
----------------------------------------
输出:
['P', 'y', 't', 'h', ' ', 'o', ' ', 'n']
\w
匹配包括下划线的任何单词字符。类似但不等价于[A-Za-z0-9_]
import re
a = 'Pyth3 o_9n\n'
r = re.findall('\w', a)
print(r)
-----------------------------
输出:
['P', 'y', 't', 'h', '3', 'o', '_', '9', 'n']
(空格和换行符\n不会匹配出来)
\W
大写的W,匹配任何非单词字符。等价于[^A-Za-z0-9_]
import re
a = 'Pyth3 o_9n\n'
r = re.findall('\W', a)
print(r)
-----------------------------------------------
输出:
[' ', '\n']
(只匹配出来了空格和换行符\n)
\s
匹配任何不可见字符,包括空格、制表符、换页符等等。等价于[ \f\n\r\t\v]
import re
a = 'Pyth3 o_9n\n\t'
r = re.findall('\s', a)
print(r)
-------------------------------------
输出:
[' ', '\n', '\t']
\S
大写的S,匹配任何可见字符。等价于[^ \f\n\r\t\v]
。
import re
a = 'Pyth3 o_9n\n\t'
r = re.findall('\S', a)
print(r)
---------------------------------
输出:
['P', 'y', 't', 'h', '3', 'o', '_', '9', 'n']
等等,还有很多的元字符,
详见[正则表达式百度百科]https://baike.baidu.com/item/%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F/1700215#7