2

私はJavaで正規表現プログラムを書きました。それは本当だと思いますが、結果は異なります。それを修正するのを手伝ってください。

私のコード:

String text    ="My wife back me up over my decision to quit my job";

String patternString = "[/w/s]*back(\\s\\w+\\s)*up[/w/s]*.";

Pattern pattern = Pattern.compile(patternString, Pattern.CASE_INSENSITIVE);

Matcher matcher = pattern.matcher(text);

boolean matches = matcher.matches();

System.out.println("matches = " + matches);

出力:一致= false

私はJavaプログラミングの初心者です。入力文の「バックアップ」の一致をテストするために、正規表現を使用してプログラムを作成したいと思います。

ご清聴ありがとうございました。

4

2 に答える 2

3

パターンは次のようにする必要があると思います:

String patternString = "[\\w\\s]*back(\\s\\w+\\s)*up[\\w\\s]*.";
于 2013-03-23T08:05:09.713 に答える
1

バックスラッシュの代わりにスラッシュを使用しています:

String patternString = "[/w/s]*back(\\s\\w+\\s)*up[/w/s]*.";
                         ^ ^                       ^ ^

この 2 つは交換可能ではありません (バックスラッシュを 2 つ重ねる必要があることを忘れないでください)。

于 2013-03-23T07:58:50.490 に答える