[英]How Do You Unescape Special Characters In A Python String?
从spam\/eggs
到spam/eggs
# This isn't working...
str = "spam\/eggs"
s = bytes(str, "utf-8").decode("unicode_escape")
print(s)
>>> spam\/eggs
# How to get "spam/eggs"
在 python 中,您不能使用“\”,因为 python 会认为您会在其后添加一些内容,例如“\t”、“\n”等。因此您可以在字符串中使用额外的反斜杠: string = 'spam\\/eggs'
我认为这不是以不同方式执行此操作的最有效方法,但您可以这样做:
strs = 'spam\/eggs'
print(strs)
strs = strs.replace('\\','')
print(strs)
我只是通过用空字符串替换它来删除\
。
你可以使用正则表达式。
要特别删除特殊字符 \,您必须指定正则表达式 \ \
import re
myString = "spam\/eggs"
str2 = re.sub(r'\\', "", myString) # remove this character '\'
print(str2)
# spam/eggs
通用(删除特定字符):
import re
myString = "sp&a+m\/eg*gs"
str2 = re.sub(r'[\\&+*]', "", myString) # to remove what you want into the brackets
print(str2)
# spam/eggs
str = "spam/eggs"
str2 = bytes(str, "utf-8").decode("unicode_escape")
print(str2)
顺便说一句:您应该更仔细地将代码放在问题中; 你调用一个变量str
然后myString
和第二个变量str2
然后str1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.