<br/>
2つのタグ間のデータを取得したい。
xmlファイルのデータは次のようになります<br/>lots of data<br/>
。
<br/>
次に、2つのタグ間のデータを取得し、その中の特定のデータをフェッチします。
タグを検索してタグ間の特定のデータを取得する方法を誰かに提案してもらえますか?
これを行うには、ここで LINQ to XML を使用できます。
例:
var xmlStr = @"<root>
data1<br/>
data2<br/>
data3<br/>
data4<br/>
data5<br/>
</root>";
var doc = XDocument.Parse(xmlStr);
var query =
from br in doc.Descendants("br")
let textNode = br.NextNode as XText
where textNode != null
let nextBr = textNode.NextNode as XElement
where nextBr != null && nextBr.Name == "br"
select textNode.Value;
LINQ to XML アプローチは、Jeff Mercadoの回答として、これよりもかなり親しみやすいものです。XML データの解析に RegEx を使用することはお勧めしません。ただし、要件が 1 回のみの場合は、役立つ場合があります。
(?is)(?<=^|<br/>).*?(?=<br/>)