是什么?
正则表达式是一种定义了搜索模式的特征序列,主要用于字符串的模式匹配,或是字符的匹配。正则表达式是处理NLP的最基本手段之一,其可以帮助我们在格式复杂的的文本中抽取所需要的信息。
用来做什么?
- NLP通常所需要处理的预料一部分来自web网页的信息抽取,一部分来自文本格式的文档,但是它们的格式不统一,大部分为半结构化文本,因此需要处理它们,将其转变为结构化文本以便后续处理。
- 正则表达式的另一个作用是去除噪声。在处理大量文本片段的时候,有非常多的文字信息与最终输出的文本无关,这些无关片段称之为噪声(如URL或链接、语气助词、标点符号等)。
实现方法
在Python中,我们用re模块来实现正则表达式。通过使用re的一个方法--re.search。
通过使用re.search(regex,string)这个方法,我们可以检测到string这个字符串是否匹配正则表达式regex。如果匹配到会返回一个match对象,如果没有匹配到则返回None。
- 例一
import re
text_string = '''正则表达式是一种定义了搜索模式的特征序列,主要用于字符串的模式匹配,或是字符的匹配,正则表达式是处理NLP的最基本手段之一,其可以帮助我们在格式复杂的的文本中抽取所需要的信息,'''
regex = '正则'
p_string = text_string.split(',') #以逗号为分隔符划分原句