首页 > 解决方案 > python用特殊字符分割一个字符串

问题描述

我需要拆分我收到的字符串:

my_string = "\data\details\350.23.43.txt"

当我使用my_string.replace ("\\", "/")

它返回:/data/detailsè.23.43.txt

它正在考虑\350我的字符串中的特殊字符'è'

标签: pythonpython-3.xregexspecial-characters

解决方案


\in 字符串文字被视为转义字符。这就是为什么s1 = "line\nsecond line"创建一个有两行的字符串。这也是您使用"\\"in 的原因my_string.replace ("\\", "/")

因此,要解决您的问题,如果您使用的是字符串文字,则my string = "\data\details\350.23.43.txt"应该使用"\\data\\details\\350.23.43.txt"它来确保\正确转义。my string = r"\data\details\350.23.43.txt"或者,您可以通过添加r到引号中来使用原始字符串。这样什么都不会被转义(所以r"\n"将是一个 2 char 字符串,\n不是一个新行字符)


推荐阅读