0

入力文字列を次のように指定できるとします。

  • read(xpath('...'))または
  • xpath('...')または
  • ..。

ここで...は、たとえば、xpath式を保持するだけです。/comment/text

私が本当に欲しいのはxpath式だけです。指定できる3つの有効なパターンを考えると、一般にこの値を抽出するための効率的な方法は何でしょうか。

また、これをJavaで実装しています。

4

2 に答える 2

0

それはあなたがいくつかのコードを投稿するのを助けたでしょうが、あなたは文字列分割を使うことができます。http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html#split%28java.lang.String%29を参照してください

xpath('')があることが確実な場合は、正規表現としてxpath('を使用し、文字列を削除して、別の'(アポストロフィ)に到達するまでその中のデータを収集できます。

これがあなたにアイデアを与えることを願っています。

于 2012-06-12T17:03:59.617 に答える
0

これが基本的な例です。両方の文字列の例のxpath部分と一致します。

import java.util.regex.*;

class Untitled {
  public static void main(String[] args) {
    String input = "read(xpath('...'))";
    String result = null;
    Pattern regex = Pattern.compile("xpath\\(\'(.*?)\'\\)");
    Matcher matcher = regex.matcher(input);

    if (matcher.find()) {
        result = matcher.group(1);
    }

    System.out.println(result);
  }
}
于 2012-06-12T17:07:42.783 に答える