正则表达式与文本分析:从基础到实战
1. 正则表达式基础
在处理文本时,我们常常需要匹配特定的模式。为了更精准地匹配,我们可以使用不同类型的元字符,比如用于匹配单词边界的元字符。
1.1 锚点和边界
有时候,我们希望匹配字符之前、之后或之间的位置。例如,定位字符串的开头或结尾,这被称为锚点;定位单词的开头或结尾,则被称为边界。元字符 \b 表示单词的边界,它长度为 0,能匹配模式边界上的空白字符或标点符号。
以下是一个例子,使用 \b 来修正社会安全号码(SSN)的正则表达式:
import re
# 未使用 \b 的正则表达式
regex1 = r'\d\d\d-\d\d-\d\d\d'
text1 = 'My other number is 6382-13-38420.'
matches1 = re.findall(regex1, text1)
print(matches1)
# 使用 \b 的正则表达式
regex2 = r'\b\d\d\d-\d\d-\d\d\d\d\b'
text2 = 'My reeeal number is 382-13-3842.'
matches2 = re.findall(regex2, text2)
print(matches2)
1.2 转义元字符
我们已经了解了一些特殊字符,即元字符,如 [ 和 ] 表示字符类, ^ 用于切换到否定字符类
超级会员免费看
订阅专栏 解锁全文
7346

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



