我几乎在this thread(samplebias的答案)中找到了这个问题的答案;但是我需要将一个短语分成单词、数字、标点符号和空格/制表符。我还需要这个来保持这些事情发生的顺序(线程中的代码已经这样做了)。在
所以,我发现的是这样的:
from nltk.tokenize import *
txt = "Today it's 07.May 2011. Or 2.999."
regexp_tokenize(txt, pattern=r'\w+([.,]\w+)*|\S+')
['Today', 'it', "'s", '07.May', '2011', '.', 'Or', '2.999', '.']
但这是我需要给出的清单:
^{pr2}$正则表达式一直是我的一个弱点,所以经过几个小时的研究,我仍然被难住了。谢谢您!!在
不完全符合您提供的预期输出,问题中的更多详细信息会有所帮助,但无论如何:
我觉得这样的事情应该对你有用。regex中可能有比需要的更多的内容,但是您的需求有些模糊,与您提供的预期输出不完全匹配。在
在正则表达式
\w+([.,]\w+)*|\S+
,\w+([.,]\w+)*
捕获单词,\S+
捕获其他非空白。在为了捕获空格和制表符,请尝试以下操作:
\w+([.,]\w+)*|\S+|[ \t]
。在相关问题 更多 >
编程相关推荐