-
森林海
您可以将此正则表达式与findallin一起使用python:>>> s = "Hello world. This-is-foo! I love you">>> print ( re.findall( r'\w+|[^\s\w]+', s) )['Hello', 'world', '.', 'This', '-', 'is', '-', 'foo', '!', 'I', 'love', 'you']正则表达式演示正则表达式详细信息:\w+: 匹配 1 个或多个单词字符|: 或者[^\s\w]+; 匹配 1 个或多个非单词和非空白字符
-
慕尼黑8549860
这个正则表达式应该工作:re.findall(r'\w+|\S', s)这表示单词和无空格字符。代码:import res = "Hello world. This-is-foo! I love you"print(re.findall(r"\w+|[^\w\s]+", s))输出:['Hello', 'world', '.', 'This', '-', 'is', '-', 'foo', '!', 'I', 'love', 'you']
-
慕哥6287543
您可以匹配单词\w+或非单词\W+(注意大写):import res = "Hello world. This-is-foo! I love you"print(re.findall(r"\w+|\W+", s))你得到:['Hello', ' ', 'world', '. ', 'This', '-', 'is', '-', 'foo', '! ', 'I', ' ', 'love', ' ', 'you']编辑如果你想避免空格,你可以这样做:import res = "Hello world. This-is-foo! I love you"print(re.findall(r"\w+|[^\w\s]+", s))你得到:['Hello', 'world', '.', 'This', '-', 'is', '-', 'foo', '!', 'I', 'love', 'you']
-
森栏
所有单词和无空格字符re.findall(r'\w+|\S', s)