赞
踩
正则表达式不仅仅是python语言中的一个表现,可以说他在任何语言中都可以用来匹配字符串。比如我们平时用的邮件或是电话号码区号判断等等。虽然用split('@")也不失为一种办法,但是明显把简单问题复杂化了。
在判断一个字符串是否可以使用正则表达式来解决:
1)研究表达式的特点。比如邮件@后面表示域名。
2)使用正则表达式来精确描述。
在用正则表达式的时候约定:
\d
可以匹配一个数字, \w
可以匹配一个字母或数字。 比如‘00\d’可以匹配‘007’(以下只是举例并不唯一).
可以匹配任意字符,除了\n。 比如‘ab.’可以匹配'abc'*
表示任意个字符(包括0个),用+
表示至少一个字符,用?
表示0个或1个字符,用{n}
表示n个字符,用{n,m}
表示n-m个字符。比如匹配三个数字‘\d{3}’可以匹配'123' A|B
可以匹配A或B, ^
表示行的开头, $
表示行的结束.举个栗子:‘^\d’可以匹配以数字开头的字符串 re.match(r'^(\d+)(0*)$', '102300').groups() 输出为:('102300','')。在过程中\d+默认为贪婪匹配,后面的'0*
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。