我有一根绳子:
'https://www.jobtestprep.co.uk/media/24543/xnumber-series-big-1.png,qanchor\\u003dcenter,amode\\u003dcrop,awidth\\u003d473,aheight\\u003d352,arnd\\u003d131255524960000000.pagespeed.ic.YolXsWmhs0.png'
我需要将任意转义的unicode字符('\\uXXXX'
)替换为其等价的unscapedunicode字符('\uXXXX'
)。我有Regex来提取所有必需的部分(对于'\\uXXXX'
部分和'XXXX'
部分),但是我找不到一种方法来用\u{}
替换正确的部分,因为Python给出了一个Unicode错误,并需要一个预填充字符,如'\u003d'
。使用原始字符串不起作用,因为'\u{}'
只是被转换回'\\u{}'
,我们就回到了开始的地方。在
有办法吗?如果您需要代码的示例,可以在此处查看:
^{pr2}$searched_results
是返回结果的列表。列表中的一个项目的例子是上面给出的字符串。在
你可以这样做。在
您的regex从网页中提取JSON字符串:
你删除的那些
"
卡特尔实际上很重要。这里的\uxxxx
转义语法是特定于JSON(和Javascript)语法的;它们与Python的使用密切相关,但是不同(不多,但是当您有非BMP代码点时,这很重要)。在如果保留引号,则可以将它们简单地解码为JSON:
^{pr2}$更好的方法是使用HTML库来解析页面。{使用数据}可以得到}:
这将把每个
<div class="rg_meta" ...>
元素的文本内容作为JSON数据加载,并从每个生成的字典中提取ou
键。不需要正则表达式。在相关问题 更多 >
编程相关推荐