Python:如何拆分字符串但保留非字母数字字符

时间:2018-08-15 05:13:38

标签: python split

我在处理此问题时遇到问题:

Sample string - \"H\00E6tta\"

* \ 00E6是unicode,尽管不是通常的\ u00e6格式,我的脚本也能够理解它。因此,请不要担心那部分。

我希望分割后像这样:

['', '"H', "00E6tta", '"'] - first white column is normal as nothing before the '\' when I split

我这样做了:

sub_glyph = glyph.split("\\")

但这是我得到的结果:

['', 'H', '00E6tta', '']

有任何线索吗?我需要将“转换为unicode。但是现在它不见了。我很​​困惑,因为我将其相应地拆分为'\',为什么会消失。无法在线找到任何有用的指南,需要帮助。

谢谢

1 个答案:

答案 0 :(得分:2)

使用原始字符串(将r前面的字符串设为原始字符串),然后split使用它:

s = r'\"H\00E6tta\"'

print(s.split('\\'))
# ['', '"H', '00E6tta', '"']

注意:当我们将s设为原始字符串时,“文字”字符串(此处)实际上变为\\"H\\00E6tta\\"(使用repr(s)查看更改)。这使我们的split成为可能。