import re
s6 = '''Male : abc
Male : def'''
re.findall(r'(.*):|:(.*)', s6)我的产出:
[('Male ', ''), (' Male ', '')]我的预期产出:
[('Male','abc'),('Male','def')]当我做re.findall(r'(.*):', s6)的时候,我得到了['Male ', ' Male '],和re.findall(r':(.*)', s6),我得到了[' abc', ' def']。当我使用|符号时,我得到了错误的输出。
免责声明:请不要做re.split
我也做了\w+,它正在工作,但是我想要一个如下格式的表达式。我做过re.findall(r'\s*(\w+)\s*:|:\s*(\w+)', s6),它不是单独工作的。有了\s*(\w+)\s*:和:\s*(\w+)', s6,它就可以工作了。
我想知道为什么|不起作用。
发布于 2019-11-09 07:13:58
如果您需要所有的单词,只需使用'\w+'
s6 = '''Male : abc
Male : def'''
re.findall('\w+', s6)输出:
['Male', 'abc', 'Male', 'def']https://stackoverflow.com/questions/58777220
复制相似问题