自然语言处理中的预处理与特征工程
1. 高级正则表达式
正则表达式有一些高级概念非常实用,其中前瞻和后瞻用于从数据中找出子字符串模式。
- 正向前瞻 :如果定义的模式后面跟着某个子字符串,正向前瞻会匹配该子字符串。其语法是 (?=pattern) 。例如,对于句子 “I play on the playground.”,若想仅在 “play” 后面跟着 “ground” 时提取 “play”,可以使用正则表达式 rplay(?=ground) ,这样文本字符串中的第一个 “play” 不会被匹配。
- 正向后瞻 :如果定义的模式前面有某个子字符串,正向后瞻会匹配该子字符串。其语法是 (?<=pattern) 。例如,在句子 “I play on the playground. It is the best ground.” 中,若想仅在 “ground” 前面是 “play” 时提取 “ground”,可以使用正则表达式 r(?<=play)ground 。
- 负向前瞻 :负向前瞻匹配的字符串后面绝对不能跟着正则表达式模式部分定义的模式。其语法是 (?!pattern) 。例如,在上述句子中,若想仅在 “play” 后面不是 “ground” 时提取 “play”,可以使用正则表达式 r play(?!ground) ,这样 “on” 前面的 “play” 会被匹配。
-
超级会员免费看
订阅专栏 解锁全文

887

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



