【发布时间】:2023-03-18 07:57:02
【问题描述】:
我正在应用这个正则表达式:
a = new window.RegExp('(£...)');
到 XMLHttprequest 的响应文本:
d= a.exec(Xml.responseText);
其中 'Xml.responseText' 是一个字符串,其中包含以下页面的 html 源代码:
http://www.amazon.co.uk/gp/aw/d/B0050IIVNK
到目前为止,我已经能够使用相同的代码毫无问题地匹配此页面中的任何表达式。但是当匹配字符 '£' 时,'d' 变为 'null'(这不应该因为页面中至少有两个这些字符。
有人知道为什么会这样吗?
谢谢。
编辑:通过搜索 MelanciaUK 建议的编码值 \xa3 解决了问题,谢谢。
【问题讨论】:
-
您是否尝试搜索编码值而不是符号?
-
您确定可以从亚马逊访问
responseText吗?听起来像是同源策略问题 -
这是一个chrome扩展,我已经设置了亚马逊的所有权限。
-
我会试试你的观点 Melancia
-
也许有帮助:
encodeURIComponent('£'); "%C2%A3"还有'£'.charCodeAt(0); // 163所以你可能也想要£。此外,£是 HTML 中的 字符实体。
标签: javascript regex