我试图在换行符上拆分,如果它没有直接在前面加上空格。例如:
CA, The title\n # yes
CA, the title \n # no
要拆分任何换行符,我可以做lines = contents.split('\r\n')
。我将如何进行修改后的拆分?
您需要使用否定的后向断言。引用re
文档,
(?<!...)
如果在字符串中的当前位置之前没有与的匹配项,
....
则匹配。这称为否定性后向断言
所以您的RegEx会像这样工作
data = """CA, The title
CA, the title
data"""
import re
print re.split(r'(?<!\s)\n', data)
# ['CA, The title', 'CA, the title \ndata']
在这里,(?<!\s)
告诉RegEx引擎,仅在其后不带前缀\s
(表示任何空白字符)的情况下,匹配此字符串。
引用的文档\s
,从re
文档,
如果
UNICODE
未指定该标志,则它与任何空格字符匹配,这等效于设置[ \t\n\r\f\v]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句