2016-11-03 5 views
0

非常に長いXML文書(100k行)があります。文字列が含まれているかどうか確認したいと思います。ここで私は現在どのようにそれをやっているのですか:xmlノードでの文字列検索の最適化

もっと効率的な方法がありますか?私はそれがより簡単/より速い方法で行うことができれば、XML文書全体を印刷する必要はないと思います。

+0

値は要素タグをwithing含まれる文字列です、または単にどこでもXMLでいるのですか? – James

+0

@ジェームズいいえ、それはXMLのテキストの中にあります。 – David542

答えて

1

はXPathをお試しください: 'HRDENTは' htmlタグのテキスト内に現れる場合

node.xpath("count(//text()[contains(.,'HDRENT')]) > 0") 

を、これはそうでない場合はfalse、trueを返す必要があります。

「HRDENTは」タグの属性、使用中に表示されている場合:

node.xpath("count(//*[@*[contains(.,'HDRENT')]]) > 0") 
+0

文字列が要素のテキストにない場合はどうなりますか?たとえば、私の場合は ' ...'です。 – David542