现在,我将文件作为字符串,并将它们格式化为json。该文件包含\r,\n我想转义的字符,但是文件中有json对象,其中已经转义了那些非法字符,比如\r和\n。
我在下面试过..。但我不知道为什么不起作用
re.sub(r'[^\][\n]', r'\\\\n', s)
任何建议都将不胜感激!
发布于 2016-08-03 13:42:30
您可以使用RegEx这样做:
import re
data = 'Hello\r\nWorld\\r\\n'
print(data)
print('-'*20)
data = re.sub(r'([^\\])\r', '\\1\\\\r', data)
data = re.sub(r'([^\\])\n', '\\1\\\\n', data)
print(data)
输出:
Hello
World\r\n
--------------------
Hello\r\nWorld\r\n
或者,一种稍微不同的方法是这样做:
data = 'Hello\r\nWorld\\r\\n'
print(data)
print('-'*20)
data = data.replace('\r', '\\r')
data = data.replace('\n', '\\n')
print(data)
输出:
Hello
World\r\n
--------------------
Hello\r\nWorld\r\n
https://stackoverflow.com/questions/38754038
复制相似问题