2

次のコード行があります。

Matcher matcher = Pattern.compile("CREATE TABLE ([^ ]*) \\(").matcher("CREATE TABLE DeliveryPointAddress (");

結果Matcherに一致が含まれていないか、さらに重要なことに、テーブル名が含まれていません。

"DeliveryPointAddress"グループ 1 で一致するには、何を変更する必要がありますか?

4

1 に答える 1

5

私は超能力者ではありませんが、あなたの問題はfind()、マッチャーをクエリする前に呼び出していないことだと思います:

Matcher matcher = Pattern.compile("CREATE TABLE ([^ ]*) \\(").matcher(
                "CREATE TABLE DeliveryPointAddress (");
matcher.find();
System.out.println(matcher.group(1));
配送先住所

一致が見つかったかどうかを示すブール値を返すことに注意してくださいfind()。通常、次の行に沿って何かを行います

if (matcher.find()) {
    System.out.println(matcher.group(1));
}

find()しかし、考え方は同じです。最初に電話してください。

于 2013-09-28T00:59:24.930 に答える