簡體   English   中英

如何使用XPath查詢在xml節點(空節點/附加到現有內容)中添加字符串內容

[英]How to add string content in xml nodes(empty node/append to existing content) using XPath Query

我已經有以下xml結構,其子節點已經可以用作標題,desc,symp,diag,對待addinfo等。我想檢查addinfo是否包含任何東西,並向其附加一些字符串,例如“ This is Additional info”。 我需要根據疾病標題-標題標簽檢查addifo標簽的疾病標題很多。

<chapter>
  <disease type="Name">
    <title>Name</title>
    <desc>--------------</desc>
    <symp>--------------</symptoms>
    <diag>-------------</diagnosis>
    <treat>-------------</treatment>
    <addinfo></addinfo>
  </disease>
</chapter

>

我正在使用XPath查詢根據疾病名稱搜索標簽的內容。 謝謝

您可以使用這樣的XPath來查看addinfo是否為空: //addinfo[not(node())]

更新:

好吧,現在完全失去了想要的東西。 聽起來像是一個非常簡單的問題。 您將創建某種getText()方法,該方法給定一個XML節點,獲取與之關聯的文本(如果有的話,或者返回null或空字符串)。 然后,您將遍歷所有疾病,並針對每種疾病執行邏輯: if( string.isNullOrEmpty(getText(disease, "addinfo")) ) { // do something } -如果您要檢查addinfo為空或向其中添加內容等。

XPath只能從您的文檔中檢索信息,而不能對其進行修改。

XQuery可以生成文檔的修改后的副本,但這並不是特別容易,因為您需要顯式地復制所有您不想更改的部分。

XSLT是產生文檔修改副本的更好選擇。 或根據需要選擇XQuery更新工具。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM