c# - Xpath 查询 cdata
问题描述
如何使用 xpath 从 xml 获取值f89dcc8012314bb9b0de723f308bee49?该值可以存在于任何级别。
<root>
<item>
<category><![CDATA[umb://document/f89dcc8012314bb9b0de723f308bee49]]></category>
</item>
<item>
<label>
<category><![CDATA[umb://document/f89dcc8012314bb9b0de723f308bee49]]></category>
</label>
</item>
</root>
解决方案
要选择项目或标签节点中的类别,您可以使用//*[self::item or self::label]/category
. 这给了你#cdata-section
,但提取 CDATA 中的部分字符串不是 xPath 的工作,因为这个值不是 XML 结构的一部分。为此使用子字符串、拆分字符串或正则表达式。
推荐阅读
- angular - Jhipster - 当前在 Angular 前端登录的用户
- postgresql - 当 NODE_ENV 设置为 staging 时,Heroku PG 数据库迁移默认为生产
- c - 我正在使用#pragma 指令启动和退出,但输出是意外的
- javascript - 为什么 Set 不提供吸气剂?
- c# - 将 Word 文件转换为测试题 C#
- python - 使用两个张量向量创建 N x M 张量矩阵,并为每个 (n,m) 对应用一个函数
- amazon-dynamodb - DynamoDB 全局索引重载与稀疏索引
- python - 从网页中抓取 pdf
- javascript - 如何在博主使用javascript的/search/label/LABEL_NAME后添加“?&max-results=”
- python - 我需要帮助在 discord py 中创建 discord py temp 静音命令