zzz*_*zzz 23 python escaping backslash
我有一个字符串.在那个字符串是双反斜杠.我想用单个反斜杠替换双反斜杠,以便可以正确解析unicode char代码.
(Pdb) p fetched_page
'<p style="text-align:center;" align="center"><strong><span style="font-family:\'Times New Roman\', serif;font-size:115%;">Chapter 0<\\/span><\\/strong><\\/p>\n<p><span style="font-family:\'Times New Roman\', serif;font-size:115%;">Chapter 0 in \\u201cDreaming in Code\\u201d give a brief description of programming in its early years and how and why programmers are still struggling today...'
Run Code Online (Sandbox Code Playgroud)
在此字符串内,您可以看到转义的unicode字符代码,例如:
\\u201c
Run Code Online (Sandbox Code Playgroud)
我想把它变成:
\u201c
Run Code Online (Sandbox Code Playgroud)
尝试1:
fetched_page.replace('\\\\', '\\')
Run Code Online (Sandbox Code Playgroud)
但这不起作用 - 它搜索四倍反斜杠.
尝试2:
fetched_page.replace('\\', '\')
Run Code Online (Sandbox Code Playgroud)
但这会导致行尾错误.
尝试3:
fetched_page.decode('string_escape')
Run Code Online (Sandbox Code Playgroud)
但这对文本没有影响.所有双反斜杠仍然是双反斜杠.
sch*_*mar 24
你可以尝试codecs.escape_decode,这应解码转义序列.
max*_*555 14
蟒蛇3:
>>> b'\\u201c'.decode('unicode_escape')
'“'
Run Code Online (Sandbox Code Playgroud)
或者
>>> '\\u201c'.encode().decode('unicode_escape')
'“'
Run Code Online (Sandbox Code Playgroud)
小智 12
我没有得到你描述的行为:
>>> x = "\\\\\\\\"
>>> print x
\\\\
>>> y = x.replace('\\\\', '\\')
>>> print y
\\
Run Code Online (Sandbox Code Playgroud)
当您'\\\\'在输出中看到时,您看到的字符串数量是字符串中的两倍,因为每个字符都是转义的.你写的代码应该可以正常工作.尝试print输出实际值,而不是仅查看REPL如何显示它们.
| 归档时间: |
|
| 查看次数: |
31770 次 |
| 最近记录: |