提问人:Fauna Muirgen 提问时间:11/10/2023 更新时间:11/11/2023 访问量:54
Xpath如何找到包含包含unicode的文本的元素?
Xpath how find element containing text containing unicode?
问:
例如,我试图在国际网站上找到这样的东西:
Unicode: HTML格式: "\u202aDansk\u202c\u200f"
‪Dansk‬‏
这不起作用://*[contains(text(),'‪Dansk‬‏')]
答:
1赞
Michael Kay
11/10/2023
#1
XPath 本身不提供任何转义非 ASCII 字符的方法。但是,编写 XPath 字符串的宿主语言经常如此。
当 XPath 表达式以 Java、C#、Python 或 Javascript 等编程语言编写为字符串文本时,通常可以使用反斜杠转义:
xpath.evaluate("contains(., '\u202aDansk\u202c\u200f')")
当 XPath 表达式以基于 XML 的语言(如 XSLT 或 XSD)编写为属性时,可以使用与号转义:
select="contains(., '‪Dansk‬‏')"
在任何其他上下文中,都需要检查主机语言环境的规范。
评论
0赞
LMC
11/10/2023
您可以将 Python 添加到支持反斜杠 Unicode 转义的语言列表中
评论
$x("//*[contains(text(),'‪Dansk‬‏')]")