Javascript 用于选择所有文本节点的XPath
我正在编写一个JavaScript函数,可以用HTML代码替换文本,但要做到这一点,我需要能够访问文本节点形式的文本。以下XPath选择文档中的所有Javascript 用于选择所有文本节点的XPath,javascript,html,xml,xpath,Javascript,Html,Xml,Xpath,我正在编写一个JavaScript函数,可以用HTML代码替换文本,但要做到这一点,我需要能够访问文本节点形式的文本。以下XPath选择文档中的所有div标记: //div 以下XPath选择属性class赋值为myclass的所有元素: //*[@class="myclass"] 以下选项选择ID为注释的元素下方任何级别上出现的所有文本(非文本节点): //*[@id="comments"]//text() 什么是可用于选择任何元素下所有文本节点的XPath?因此,假设我想替换字符串He
div
标记:
//div
以下XPath选择属性class
赋值为myclass
的所有元素:
//*[@class="myclass"]
以下选项选择ID为注释的元素下方任何级别上出现的所有文本(非文本节点):
//*[@id="comments"]//text()
什么是可用于选择任何元素下所有文本节点的XPath?因此,假设我想替换字符串Hebert
的所有非注释出现,我需要所有的文本节点,这样我就可以在其中扫描该字符串。它会在查询中使用text()
?两个选项:
- 选择字符串值包含子字符串的所有文本节点 “赫伯特”:
- 要选择字符串值为“Herbert”的所有文本节点,请执行以下操作:
//text()
,是不正确的。节点测试选择文本节点。在字符串上下文中,它将返回文本节点的名称,但只有text()
才能选择实际的文本节点
另请参见元素节点中的文本节点,您可以对其进行操作。你指的是只包含文本而没有子元素节点的元素节点吗?你真的应该对你提出的75个问题给出一些很好的答案。问75个问题,接受0个你收到的好答案(并且在4年内只有两次向上投票)表明你对你得到的帮助缺乏感激,也无法帮助未来的读者。现在解决这个问题还不晚。你现在应该这样做。
//text()[contains(.,'Herbert')]
//text()[.='Herbert']