0

かっこの間のコンテンツを抽出する必要があります for (20)- should return 20 for ("creamy")- should returncreamy

以下のパターンマッチャーで試してみましたが、うまくいきませんでした。誰か助けてくれませんか?

Pattern pattern = Pattern.compile("\\((.*?)\\)");
4

2 に答える 2

1

単一の \ でコンパイラ エラーが発生しましたか? それをJavaでコンパイルするには、バックスラッシュをエスケープする必要があります。そうしないと、コンパイラは特殊文字を見つけようとします(。したがって、次のようになります。

Pattern pattern = Pattern.compile("\\((.*?)\\)");
Matcher match = pattern.matcher("(cream)");
match.find();
System.out.println(match.group(1));

プリントアウト

cream
于 2013-03-06T10:16:40.437 に答える
0

Javaで正規表現を使ってみてください。以下のコード スニペットを参照してください。

String matched = "";
Pattern pattern = Pattern.compile("\\((.*?)\\)");
Matcher matcher = pattern.matcher("(20)");
if (matcher.find()) {
   matched = matcher.group(1);
}
System.out.println(matched);
于 2013-03-06T10:13:27.483 に答える