我想使用 python 拆分字符串。我已经成功地为一个变量完成了它,但发现很难为 2 个变量做到这一点。
字符串:
Paragraph 4-2 says. i am going home$ early- Yes.
我需要的输出是
Paragraph 4-2 says
i am going home
early
Yes
句子应该从 .
, $
和 -
拆分出来(但是当它在 2 个数字 (4-2) 之间时,它不应该分割)
我该怎么做?
text.split('.')
更新
新的输出应该是这样的:
Paragraph 4-2 says.
i am going home$
early-
Yes.
最佳答案
>>> import re
>>> s = 'Paragraph 4-2 says. i am going home$ early- Yes'
>>>
>>> re.split(r'(?<!\d)\s*[.$-]\s*(?!\d)', s)
['Paragraph 4-2 says', 'i am going home', 'early', 'Yes']
-
\s*[.$-]\s*
匹配.
中的任何一个,$
或-
由 0 个或多个空格包围 (\s*
)。 -
(?<!\d)
是负向后视,以确保匹配前没有数字。 -
(?!\d)
是一个否定前瞻,以确保匹配后没有数字。
您可以阅读更多关于环顾四周的信息 here .
关于python - 使用多个定界符拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17899635/