正则表达式不仅仅是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’可以匹配以数字开头的字符串- 连接,用于指定一个字符的范围。A-Z、a-z 或者 0-9 分别用于表示大写字母、小 写字母和数值数字。
- 在匹配的过程中默认采取贪婪匹配,也就是尽可能的匹配更多的。比如
re.match(

本文介绍了Python中正则表达式的使用,包括其在字符串匹配、邮箱验证、电话号码判断等方面的应用。通过研究表达式特点,使用正则表达式进行精确描述。讲解了匹配规则,如数字、字母的匹配,以及贪婪匹配的概念。文章还探讨了Python的re模块,包括match()、search()函数的差异,以及compile()函数的预编译作用,强调了在大量重复匹配时提高效率的重要性。此外,还提到了findall()和sub()、subn()方法在搜索与替换中的运用。

615

被折叠的 条评论
为什么被折叠?



