- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
看了各种帖子,好像是JavaScript的unescape()
相当于 Pythons urllib.unquote()
,但是当我测试两者时,我得到不同的结果:
unescape('%u003c%u0062%u0072%u003e');
输出: <br>
import urllib
urllib.unquote('%u003c%u0062%u0072%u003e')
输出: %u003c%u0062%u0072%u003e
我希望 Python 也返回 <br>
.关于我在这里缺少什么的任何想法?
谢谢!
最佳答案
%uxxxx
是 non standard URL encoding scheme urllib.parse.unquote()
(Py 3)/urllib.unquote()
(Py 2) 不支持。
它只是 ECMAScript ECMA-262 第三版的一部分;该格式被 W3C 拒绝,并且从未成为 RFC 的一部分。
您可以使用正则表达式来转换此类代码点:
try:
unichr # only in Python 2
except NameError:
unichr = chr # Python 3
re.sub(r'%u([a-fA-F0-9]{4}|[a-fA-F0-9]{2})', lambda m: unichr(int(m.group(1), 16)), quoted)
这会解码 %uxxxx
和 %uxx
形式的 ECMAScript 3rd ed 可以解码。
演示:
>>> import re
>>> quoted = '%u003c%u0062%u0072%u003e'
>>> re.sub(r'%u([a-fA-F0-9]{4}|[a-fA-F0-9]{2})', lambda m: chr(int(m.group(1), 16)), quoted)
'<br>'
>>> altquoted = '%u3c%u0062%u0072%u3e'
>>> re.sub(r'%u([a-fA-F0-9]{4}|[a-fA-F0-9]{2})', lambda m: chr(int(m.group(1), 16)), altquoted)
'<br>'
但如果可能,您应该避免完全使用编码。
关于Javascript unescape() 与 Python urllib.unquote(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23158822/
我收到了 json 数据,其中一些 unicode 字符被转义,而另一些则没有。 >>> example = r'сло\u0301во' 转义这些字符的最佳方法是什么?在下面的示例中,函数 unes
我有一个 SVG 字符串,如下面的代码示例所示。我用它作为背景图片。 为了将其转换为图像,我正在执行以下步骤: var asImage = "data:image/svg+xml; base64,"
在PowerShell中,如何对Unicode转义的字符串进行转义? $str1 = "http:\u002f\u002fgoogle.com\u002fsomething\u002ftest" 至
我必须在 if-else 语句中使用 unescape() 函数。在我的网站中,我有两个页面,一个页面包含用户填写的表单,第二个页面必须通过 unescape 函数从填写的表单中获取信息。我需要 if
我的数据库中有一列包含文本字符串,例如 Tablet with 7"Screen and 3"stylus。当我使用 PHP(通过 Laravel Eloquent 模型,更具体地说)获取此数据时,该
这个问题在这里已经有了答案: Unescape apostrophe (') in JavaScript? (2 个答案) 关闭 8 年前。 我有一个简单的字符串是 Company'
我正在尝试用 javascript 制作一个脏话过滤器。我成功了,但是当我对坏词进行编码时,我无法得到它 去上类。我已经连续两天在做这件事了。 我尝试对变量中的代码进行转义,然后在匹配时使用该变量。我
我正在尝试导入一个以分号分隔的文本文件,其中每行都以 CRLF 结尾。第一行包含字段,数据从第 2 行开始: "Field1";"Field2" "123";"Foo" "456";"Bar" 我尝试
如果 URL 的文件名中有 %20,指定 -O 将保留它,而空格是首选。 libcurl 有 curl_easy_unescape,但 bash 中的 curl 二进制文件似乎没有简单的方法来取消转义
curl_unescape 似乎不在 pycurl 中,我应该用什么代替? 最佳答案 你试过urllib.quote了吗? import urllib print urllib.quote("some
这段代码在控制台上运行完美,但是当我在我的 flask 应用程序中实现它时,它说有一个 AttributeError clean = html.unescape(tweet.text)
考虑字符串: Hello ! I hear you like \ tags! Isn't that ? 我希望能够扫描字符串中出现的 ,用于变量插值;但我不想被转义(如上面的 \)。 到目前为止,非
看了xml.Utility.unescape的SDK文档,我以为是xml.Utility.escape的反操作,其实不是似乎什么都做: scala> xml.Utility.escape("& va
我正在尝试将 svg 转换为 png,使用代码 here作为我转换的基础。 请注意以下代码(已缩短为仅与我稍后描述的错误相关的代码): let svgData = new XMLSerializer(
我想记录 R 中的替换函数,但是当我运行 R CMD check 时,我收到此错误消息: Bad \usage lines found in documentation object 'timesta
这个问题在这里已经有了答案: What is the difference between __str__ and __repr__? (28 个答案) 关闭 6 年前。 这是我的代码: impor
我正在使用 BULK INSERT 将一个从 SQL Anywhere 数据库创建的文本文件加载到 SQL Server 中。我们收到的文本文件包含包含制表符的字段。它们在文本文件中转义为“\x09”
我在使用 Javascript escape() 方法编码的 Java 中取消转义特殊字符时遇到问题。 Chrome 控制台: escape( "Gaëtan" ) "Ga%EBtan" Java 端
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
在Python 3.3中,我试图从截断的unicode值重建unicode字符,然后将字符打印到控制台。 例如,我想从 '4E00' 形成字符串 '\u4E00'。我尝试过: base = '4E00
我是一名优秀的程序员,十分优秀!