我将设计一个正则表达式来从给定的文本中分离所有实际单词:
我想到了一个正则表达式,类似这样:
在Python中拆分后,结果包含
如何摆脱空项?为什么空格不匹配?
编辑:
在空格上拆分会得到像
在非字母上拆分,会得到像
在非字母(除了
输入示例:
"John's mom went there, but he wasn't there. So she said: 'Where are you'"
期望输出:
["John's", "mom", "went", "there", "but", "he", "wasn't", "there", "So", "she", "said", "Where", "are", "you"]
我想到了一个正则表达式,类似这样:
"(([^a-zA-Z]+')|('[^a-zA-Z]+))|([^a-zA-Z']+)"
在Python中拆分后,结果包含
None
项和空格。如何摆脱空项?为什么空格不匹配?
编辑:
在空格上拆分会得到像
["there."]
这样的项。在非字母上拆分,会得到像
["John","s"]
这样的项。在非字母(除了
'
)上拆分,会得到像["'Where","you'"]
这样的项。
split
而不是findall
? - Chris Wesselingr"[a-zA-Z]+(?:'[a-z])?"
的findall
就可以完成任务。所以我真的很好奇为什么想要一个split
。 - Chris Wesseling