例如,字符串是hello %$ world %^& let me ^@ love && you
,预期结果在一个变量中是hello,而在其他变量中是休息示例a =" hello" B ="世界"等
答案 0 :(得分:0)
使用正则表达式
像这样: -
import re
a = "hello %$ world %^& let me ^@ love && you"
print(re.findall(r'\w+',a))
答案 1 :(得分:0)
您可以使用(regular expressions从字符串中检索世界):
import re
my_string = "hello %$ world %^& let me ^@ love && you"
re.findall(r'\w+\b', my_string)
# ['hello', 'world', 'let', 'me', 'love', 'you']
中有关正则表达式的详情
正如评论中所述,附加正则表达式以检索由特殊字符分隔的单词组:
my_string = "hello world #$$ i love you #$@^ welcome to world"
re.findall(r'(\w+[\s\w]*)\b', my_string)
# ['hello world', 'i love you', 'welcome to world']
答案 2 :(得分:0)
基本答案是正则表达式。我建议从NLTK查找tokenizer,它们包含对该主题的研究,并让您可以灵活地切换到稍后更复杂的东西。你猜怎么着?它也提供了基于Regexp的标记器!
from nltk.tokenize import RegexpTokenizer
tokenizer = RegexpTokenizer(r'([A-Za-z0-9 ]+)')
corpus = tokenizer.tokenize("hello %$ world %^& let me ^@ love && you")