关注RPA请访问网站:
www.i-search.com.cn
学Python,用RPA,欢迎下载使用
https://www.i-search.com.cn/?from=csdn
贪婪模式与非贪婪模式
贪婪模式:在整个表达式匹配成功的前提下,尽可能多的匹配 (*);
非贪婪模式:在整个表达式匹配成功的前提下,尽可能少的匹配 (?);
Python 里数量词默认是贪婪的。
示例一
import re
str = ‘abbbc’
# 贪婪模式
pattern = re.compile(r’ab*’) # * 决定了尽可能多匹配 b,结果是 abbb
result = pattern.match(str)
print(result.group())
# 非贪婪模式
pattern = re.compile(r’ab*?’) # *? 决定了尽可能少匹配 b,结果是 a
result = pattern.match(str)
print(result.group())
pattern = re.compile(r’ab+?’) # *? 决定了尽可能少匹配 b,结果是 ab
result = pattern.match(str)
print(result.group())
示例二
import re
# 贪婪模式
str = “aa
pattern = re.compile(r’
正则表达式测试网址
http://tool.oschina.net/regex/
匹配中文
中文的 unicode 编码范围 主要在 [u4e00-u9fa5] (全角(中文)标点等除外),丌过,
在大部分情况下,应该是够用的。
假设现在想把字符串 title = u’你好,hello,世界’ 中的中文提取出来,可以这么做:
import re
title = ‘你好,hello,世界’
pattern = re.compile(r’[\u4e00-\u9fa5]+’)
result = pattern.findall(title)
print(result)