You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

tDOM是否具备CSS中^=运算符的等效元素选择功能?

tDOM实现类属性前缀匹配的方法

tDOM基于XPath 1.0,不支持CSS选择器里的^=前缀匹配语法,但可以用XPath内置函数实现相同效果:

匹配class属性字符串以nm_开头的span元素

直接使用starts-with()函数,对应CSS中[class^="nm_"]的逻辑(仅匹配属性字符串开头为nm_的情况,比如class="nm_foo"或class="nm_foo bar"都会被选中,class="bar nm_foo"不会):

修改后的示例代码:

foreach item [$doc selectNodes {html/body/div[@class="main"]//span[starts-with(@class, "nm_")]}] {
    # 这里写你的元素处理逻辑
}

扩展:匹配class列表中任意类名以nm_开头的元素

如果需要支持类名在属性中任意位置(比如class="bar nm_foo"也需要选中),可以结合concat()和contains()函数,确保匹配完整的类名:

foreach item [$doc selectNodes {html/body/div[@class="main"]//span[contains(concat(" ", @class, " "), " nm_")]}] {
    # 这里写你的元素处理逻辑
}

内容的提问来源于stack exchange,提问作者Gary

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 10:48:19