dem*_*mos 1 python parsing text-processing
我正在写一段代码,它将从正在运行的文本中提取单词.此文本可以包含\ r,\n等分隔符,这些分隔符可能位于文本中.
我想丢弃所有这些分隔符,只提取完整的单词.我怎么能用Python做到这一点?任何可用于在python中处理文本的库?
假设您对"单词"的定义与正则表达式模块(re)(即字母,数字和下划线)的定义一致,则很容易:
import re
fullwords = re.findall(r'\w+', thetext)
Run Code Online (Sandbox Code Playgroud)
哪个thetext是有问题的字符串(例如,来自一个打开f.read()文件对象的文件f,如果你从中获取文本的话).
如果你以不同的方式定义单词(例如,你想要包含撇号,例如"它的"将被视为"一个单词"),那就不难了 - 只需用作findall适当模式的第一个参数,例如r"[\w']+"撇号案件.
如果你需要非常非常复杂(例如,处理不会在单词之间使用中断的语言),那么问题突然变得更加困难,你需要一些像nltk这样的第三方软件包.