2011-09-30 17 views
12

ユーザー入力文字列を指定すると、有効なXpath式がJavaで であるかどうかをどのように判断できますか?私は がjavax.xml.xpathライブラリを使用してそれを行う方法を見つけることができないので、ちょうど興味がありません。ありがとう。Javaのxpath式を検証する

+0

尋ねるすべての質問に対する回答を受け入れる必要があります...人々はあなたを助けるために時間と労力を費やす可能性が低くなりますし、あまりにも恩知らずです。 – Troyseph

答えて

24

xmlまたはxmlスキーマのコンテキスト内で式が有効である場合は、構文を検証したいと仮定します。 compile(..)メソッドを使用することができ、xpathの構文が正しくない場合は例外がスローされます。

XPathFactory factory = XPathFactory.newInstance(); 
XPath xpath = factory.newXPath(); 
XPathExpression expr = xpath.compile("//book[author='Abc']/title/text()"); 
+0

それは動作します!ありがとう:) –

+2

@ジェフリー.W.Dongは答えとしてこれを助けた場合は受け入れる –

0

実行いくつかの例のXML文書(例えば<a/>)に対してXPath。ほとんどの場合、何も返されませんが、例外がスローされるかどうかは気になる点です。