我有以下代码行,它data2根据空白实例将字符串拆分为一个列表:
string_list = data2.split()
Run Code Online (Sandbox Code Playgroud)
但是,在我的某些数据中,格式中包含日期"28, Dec"。上面的代码在我不想要的日期和月份之间的空白处拆分。有没有办法我可以说“在空白处拆分,但如果在逗号之后就不行”?
您需要使用正则表达式。
>>> re.split('(?<!,) ', 'blah blah, blah')
['blah', 'blah, blah']
Run Code Online (Sandbox Code Playgroud)
从链接:
(?<!...)如果字符串中的当前位置前面没有匹配...,则匹配。这称为否定回溯断言。与正向后视断言类似,包含的模式必须只匹配某个固定长度的字符串。以否定的后视断言开头的模式可能会在被搜索字符串的开头匹配。