Python

Python 正则表达式1 - 正则介绍

2021-04-18  本文已影响0人  庄周幻梦

正则表达式

re模块提供了与Perl语言类似的正则表达式匹配操作
模式和被搜索的字符串既可以是Unicode字符串(str), 也可以是8位字节串(bytes)。但是Unicode字符串与8位字节串不能混用。

正则表达式使用反斜杠字符('')来表示特殊形式或是允许在使用特殊字符时不引发它们的特殊含义。这会与Python的字符串字面值中对相同字符处于相同目的的用法产生冲突。
例如,要匹配一个反斜杠字面值,用户可能必须写成\\\\来作为模式字符串,因为正则表达式必须为\\,而每个反斜杠在普通Python字符串字面值中又必须表示为\\

解决办法是对于正则表达式样式使用Python的原始字符串表示法。在带有'r'前缀的字符串字面值中,反斜杠不必做任何特殊处理。

正则表达式语法

一个正则表达式(或RE)指定了一集与之匹配的字符串,模块内的函数可以让你检查某个字符串是否跟给定的正则表达式匹配(或者一个正则表达式是否匹配到一个字符串,这两种说法含义相同)。
有些字符,比如"|"或者"("属于特殊字符。特殊字符既可以表示它的普通含义,也可以影响它旁边的正则表达式的解释。
重复修饰符(*,+,?,{m, n}, 等)不能直接嵌套。这样避免了非贪婪后缀?修饰符,和其他实现中的修饰符产生的多义性,要应用一个内层重复嵌套,可以使用括号。 比如,表达式(?:a{6})匹配6个'a'字符重复任意次数。

特殊符号是:

上一篇 下一篇

猜你喜欢

热点阅读