什么是正则表达式
正则表达式(regular expressions)是一种符号表示,用有限的符号来代表一种字符串的匹配模式,从而能够识别进而处理更加复杂的模式。在现在nlp技术逐步发展的背景下,对于源数据的处理越发重要,正则表达式也更应该被掌握。很多语言,比如python java perl,都通过一些函数支持正则表达式的处理。本篇只谈及python的re库
怎么写正则表达式
正则表达式本质上就是一个字符串,和代码一样,只不过python的代码要送进python的解释器,而正则表达式的字符串要送进re的引擎。基于这个本质,我们可以写第一个正则表达式:
pattern = '123' # 正则表达式
sentence = 'first123rear'
re.search(pattern, sentence)
如果看过其他人写的正则表达式,有时候会发现他们的pattern
并不是简单的字符串,而是在前面有一个r。具体而言,是这样的
pattern = r'123'
这个`r``代表的意思是raw,实际上,如果我们的正则表达式没有***的话,有没有这个r没有任何差异