进阶篇

要做更精确地匹配,可以用[]表示范围,比如:

 [0-9a-zA-Z\_]   可以匹配一个数字、字母或者下划线;
 [0-9a-zA-Z\_]+  可以匹配至少由一个数字、字母或者下划线组成的字符串,比如'a100','0_Z','Py3000'等等;
 [a-zA-Z\_][0-9a-zA-Z\_]*  可以匹配由字母或下划线开头,后接任意个由一个数字、字母或者下划线组成的字符
串,也就是 Python 合法的变量;
 [a-zA-Z\_][0-9a-zA-Z\_]{0, 19}  更精确地限制了变量的长度是 1-20 个字符(前面 1 个字符+后面最多 19 个
字符)。
 A|B 可以匹配 A 或 B,所以(P|p)ython 可以匹配'Python'或者'python'。
 ^ 表示行的开头,^\d  表示必须以数字开头。
 $ 表示行的结束,\d$  表示必须以数字结束。

 你可能注意到了,py 也可以匹配'python',但是加上^py$就变成了整行匹配,就只能匹配'py'了。