XPath中选取“不包含某个子节点”的元素需用not()函数否定子节点存在性,如//div[not(p)]选无p子元素的div,注意not()判断存在而非内容为空。

XPath 中想选“不包含某个子节点”的元素,核心是用 not() 函数配合子节点判断,关键在于写对谓词里的条件逻辑。
要选取**没有特定子元素**的父元素,把 not() 放在方括号里,里面写“它有这个子节点”的反向表达:
//div[not(p)] —— 选取所有 <div> 中,<strong>不含任何 <p> 子元素</p></strong> 的那些
<li>
<code>//ul[not(li[@class='hidden'])] —— 选取不含 class="hidden" 的 <li> 子项的 <ul></ul>
<li>
//section[not(heading | h1 | h2)] —— 选取既没有 <heading></heading>,也没有 <h1></h1> 或 <h2></h2> 子节点的 <section></section>
常见误区是以为 not(p) 表示“p 标签内容为空”,其实不是:
<div><p></p>
<div class="aritcle_card">
<a class="aritcle_card_img" href="/ai/1035">
&
lt;img src="https://img.php.cn/upload/ai_manual/000/000/000/175680029477011.png" alt="Moshi Chat">
</a>
<div class="aritcle_card_info">
<a href="/ai/1035">Moshi Chat</a>
<p>法国AI实验室Kyutai推出的端到端实时多模态AI语音模型,具备听、说、看的能力,不仅可以实时收听,还能进行自然对话。</p>
<div class="">
<img src="/static/images/card_xiazai.png" alt="Moshi Chat">
<span>165</span>
</div>
</div>
<a href="/ai/1035" class="aritcle_card_btn">
<span>查看详情</span>
<img src="/static/images/cardxiayige-3.png" alt="Moshi Chat">
</a>
</div>
</div> → p 元素存在(哪怕为空),所以 //div[not(p)] 不会选中它
<li>
<div>纯文本</div> → 没有 p 子元素,//div[not(p)] 会选中它
<li>如果真要找“p 存在但内容为空”,得写://div[p and normalize-space(p) = '']
not() 可嵌套更复杂的路径,比如排除带链接的段落:
//p[not(a)] —— 不含 <a></a> 子标签的段落
<li>
//p[not(./a[@href])] —— 不含带 href 属性的 a 标签的段落(更精确)
<li>
//article[not(footer or div[@class='ad'])] —— 排除含 <footer></footer> 或广告 div 的文章
当逻辑稍复杂、或需要兼容老版本 XPath(如某些 IE 场景),可用 count() 模拟 not:
//div[count(p) = 0] 等价于 //div[not(p)]
<li>
//table[count(tr[@class='summary']) = 0] → 找不含 summary 类行的表格
<li>优点是语义直白;缺点是性能略低(需计数),且不如 not() 简洁
基本上就这些。not() 的本质就是“否定存在性”,只要把你想排除的子节点路径写进括号里,再取反,就能精准定位干净的父元素。
以上就是XPath怎么选取不包含某个子节点的元素 XPath not()函数用法的详细内容,更多请关注其它相关文章!
# 为空
# 招聘网站建设产品
# 天猫seo筛选
# 星鑫网站建设优化
# 家居网站排名优化
# 广西网站建设办理机构
# 黔南州网站推广方法优化
# 你想
# 还能
# 就能
# 括号里
# 放在
# 进阶
# 的是
# 不包含
# 不含
# 便利店营销推广活动
# 冠县网站推广费用
# 河池抖音seo哪家好些
# 从化百度网站按天推广
相关栏目:
【
Google疑问12 】
【
Facebook疑问10 】
【
优化推广96088 】
【
技术知识133117 】
【
IDC资讯59369 】
【
网络运营7196 】
【
IT资讯61894 】
相关推荐:
b站怎么用微信登录_b站微信登录方法
tiktok国际版入口_tiktok官网网页版链接
谷歌邮箱官方入口链接 谷歌邮箱网页版电脑端快速登录
天堂漫画网页版在线阅读 天堂漫画手机版入口
掌握Go App Engine项目结构与GOPATH:包管理与导入实践
《U校园》学生登录入口2025
在React中正确处理HTML input type="number"的数值类型
Leaflet地图弹出窗口图片动态显示:避免缺失图标的专业指南
Excel如何制作月度销售统计图_Excel动态图表制作与控件应用
人教版电子教材在线获取指南
AO3中文入口稳定分享_AO3官网HTTPS看文详解
如何在CSS中使用过渡制作按钮边框渐变_border-color transition实现
C++怎么解决数值计算中的精度问题_C++浮点数误差与数值稳定性分析
qq音乐官方网站入口_qq音乐在线听歌网页版链接
优化Leaflet弹出层图片显示:条件渲染策略
QQ网站入口直接登录 QQ官方正版登录页面
韩小圈网页版PC端入口 韩小圈网页版官方网站入口
顺丰快递在线查询系统 顺丰快递官方查单入口
TikTok网页版实时观看入口 TikTok网页版短视频在线浏览
折叠屏手机充不进电是什么问题? 特殊结构带来的维修难点
word怎么将图片设置为页面背景并不影响打印_Word图片背景设置方法
iPhone 13 Pro Max如何设置桌面小组件_iPhone 13 Pro Max小组件添加指南
汽车之家网页版免费登录_汽车之家官网首页直接进入
苹果iPhone14ProMax如何新建AppleID_iPhone14ProMax新建AppleID具体流程
《美篇》取消会员自动续费方法
Vue 3中独立响应式实例的创建与应用
蛙漫2(台版)正版官网 2025免费网页版分享
《异星探险家》古怪的物品作用介绍
Word 2003字体大小设置方法
哔哩哔哩的|直播|间怎么送礼物_哔哩哔哩|直播|送礼操作指南
PHP 4 函数中引用参数的默认值限制与解决方案
Animex动漫社正版在线入口 Animex动漫社动漫官方观看网
电脑桌面图标怎么变大变小_Windows个性化设置第一课【新手入门】
Firefox OS应用开发:解决XMLHttpRequest跨域请求阻塞问题
邮编号码查询app有哪些_邮编号码查询推荐app及使用体验
vivo手机视频通话美颜怎么设置_vivo视频通话美颜开启方法
《战地6》反作弊已成功拦截240万次作弊 发售第一周98%比赛没有作弊
Linux如何自动分析系统异常日志_Linux日志智能检测
mysql触发器如何编写_mysql触发器编写规范与代码示例讲解
《偃武》甘宁技能详解
123网页端官方登录页 123邮箱网页版即时通讯服务
J*aScript中高效处理用户输入:从Keyup事件到表单提交的优化实践
《三角洲行动》战斗步枪与机枪类改装代码分享
吃完饭就犯困是什么原因 餐后嗜睡如何缓解
PHP中实现JSON数据数组分页的教程
windows10怎么关闭自动安装应用_windows10禁止推广应用下载
德邦物流在线查询系统 德邦快递货物运输追踪
《万兴喵影》导出视频方法
冬季去寒冷地区旅游,以下哪种做法有助于缓解冻伤
芒果TV官网登录入口 芒果TV官方网站登录入口
2025-12-15
运城市盐湖区信雨科技有限公司是一家深耕海外推广领域十年的专业服务商,作为谷歌推广与Facebook广告全球合作伙伴,聚焦外贸企业出海痛点,以数字化营销为核心,提供一站式海外营销解决方案。公司凭借十年行业沉淀与平台官方资源加持,打破传统外贸获客壁垒,助力企业高效开拓全球市场,成为中小企业出海的可靠合作伙伴。