2024年07月26日
1、声明与非贪心的匹配。
2、表示可选的分组。用星号匹配零次或多次、一次或多次用加号匹配、用花括号匹配特定次数、贪婪与非贪婪的匹配。
python正则表达式实例
import re
a = 'wxxIxxeuieiejfsdjxxlovexxfsiewiweirxxUxxwuerowiur'
b = re.findall('xx(.*?)xx', a)
print(b)
print(type(b))
for
2024年07月25日
1、在正则表达式中添加括号,可以将匹配的字符串分组,以分离我们匹配的字符串。
多组左括号从左到右从1开始编号。
2、分组简化正则表达式,可以在正则表达式中引用分组本身。
分组的右侧可以通过分组的编号引用分组匹配的子串。而且我们可以把分组看作一个整体,分组后面可以加量词,此时量词的作用范围就是整个分组。
实例
import re
m = "(([1-9])\d*)([a-z]{2})"
r = re.match(m,"3780
2024年07月25日
1、正则表达式引擎在字符组中使用连字符(-)代表区间,因此可以使用[0-9]来匹配任何数字。
如果我们想匹配所有的小写字母,我们可以写[a-z]和所有的大写字母。
2、区间也可以表示连续的英文字母字符类,也可以表示多个不同的区间。
实例
a = re.findall(r'[0-9]','xxx007abc')
b = re.findall(r'[a-z]','abc001ABC')
c = re
2024年07月25日
1、在正则表达式中为组命名后,程序中访问分组时,不仅可以通过组号访问,还可以通过组名访问。
2、组命名通过在组开头添加实现?P<分组名>。
实例
import re
p = r'(?P<area_code>\d{3,4})-(?P<phone_code>\d{7,8})'
m = re.search(p, '010-87654321')
print(m)
print(m.gr
2024年07月25日
1、编写Python正则表达式字符串s。
2、使用re.compile()将正则表达式编译成正则对象Patternp。
3、正则对象p调用p.match()或p.fullmatch函数得到匹配对象match m。
4、判断匹配对象m内容是否成功。
实例
import re
s = "正则表达式"
p = re.compile(s)
m = p.match("检测的文本")
if m:
print(m.g
2024年07月25日
1、可在程序diamante中访问正则表达式匹配后的分组内容,也可在正则表达式内部引用前的分组。
2、反向引用语法在正则表达式中是\组编号,组编号从1开始。
实例
import re
p = r'<([\w]+)>.*</\1>' # 使用了反向引用 ①
m = re.search(p, '<a>abc</a>')
print(m) # 匹配
m =