/Results/Bill[Item[id]]/id
のようなXPath文字列があります。パスに名前空間情報を追加する必要があります。そのため、パスは/*:Results/*:Bill[*:Item[*:id]]/*:id
に変換されます。regex、Javaを使用したXPath文字列の変更
正規表現を使用すると、別の英数字が前に付いていない任意の英数字に "prepend" *などのようなものがあります。しかし、私は非常に正規表現の知識を持っていないし、これに対応する正規表現(私は正規表現を持っていると私はJavaのreplaceAll()
関数を使用する予定です)を知りません。また、誰かが私の考えがうまくいかない反例を考えることができますか?簡単な述語でXPath文字列の置換操作を実行するだけです(つまり角括弧の間にはand
、or
などはありません)。
必要なものがすべて英数字/アンダースコアの単語の前にある場合は、 '\ w +'を '*:$ 0'に置き換えます。 –