基于特殊字符python拆分字符串

时间:2018-03-16 10:31:05

标签: python string

我有一个字符串:

teststring = 'Index: WriteVTKOutput.FOR\\r\\n======================================\\r\\n'

我想根据'\\r''\\n'字符拆分它,以便得到以下结果:

testlist = ['Index: WriteVTKOutput.FOR', '======================================']

我尝试了以下命令,其中没有一个有效:

teststring.split(r'\r\n')
teststring.splitlines()

一个男人如何在保留尊严并保持真实性的同时将该字符串分成这些分隔符?

由于

4 个答案:

答案 0 :(得分:1)

这应该做的工作:

lst = teststring.split("\\r\\n")[:-1]

答案 1 :(得分:1)

splitlines无效,因为您的分隔符不是真正的行分隔符。它们只是实际的\r\n字符。

如果您的字符串以split开头或结尾,您可以通过额外的理解摆脱r"\r\n"生成的尾随/前导空字段:

[x for x in teststring.split(r'\r\n') if x]

结果:

['Index: WriteVTKOutput.FOR', '======================================']

答案 2 :(得分:0)

teststring = 'Index: WriteVTKOutput.FOR\\r\\n======================================\\r\\n'
print(teststring.split("\\r\\n")[:-1])
print(teststring.strip("\\r\\n").split("\\r\\n"))

输出

['Index: WriteVTKOutput.FOR', '======================================']
['Index: WriteVTKOutput.FOR', '======================================']

答案 3 :(得分:0)

您需要:'\\r\\n'或r' \ r \ n'

teststring = 'Index: WriteVTKOutput.FOR\\r\\n======================================\\r\\n'
new_string = [x for x in teststring.split('\\r\\n') if x]