^ :表示行的开头,^\d表示必须以数字开头
$ :表示行的结束,\d$表示必须以数字结束
\d :匹配一个数字
\w :匹配一个字母或数字
. :匹配一个任意字符
* :任意个字符(包括0个)
+ :至少一个字符
? :0个或1个字符
{n} :n个字符
{n,m} :n-m个字符
\s :匹配一个空格(也包括Tab等空白符)
\s+ :匹配至少一个空格
A|B :可以匹配A或B,所以(P|p)ython可以匹配'Python'或者'python'
[] :表示范围
实例:
[0-9a-zA-Z\_] :可以匹配一个数字、字母或者下划线
[0-9a-zA-Z\_]+ :可以匹配至少由一个数字、字母或者下划线组成的字符串
[a-zA-Z\_][0-9a-zA-Z\_]* :可以匹配由字母或下划线开头,后接任意个由一个数字、字母或者下划线组成的字符串,也就是Python合法的变量
[a-zA-Z\_][0-9a-zA-Z\_]{0, 19} :更精确地限制了变量的长度是1-20个字符(前面1个字符+后面最多19个字符)
^[0-9]+\.?[0-9]*$ :可以匹配所有的非负实数