かっこの間のコンテンツを抽出する必要があります for (20)
- should return 20
for ("creamy")
- should returncreamy
以下のパターンマッチャーで試してみましたが、うまくいきませんでした。誰か助けてくれませんか?
Pattern pattern = Pattern.compile("\\((.*?)\\)");
単一の \ でコンパイラ エラーが発生しましたか? それをJavaでコンパイルするには、バックスラッシュをエスケープする必要があります。そうしないと、コンパイラは特殊文字を見つけようとします(。したがって、次のようになります。
Pattern pattern = Pattern.compile("\\((.*?)\\)");
Matcher match = pattern.matcher("(cream)");
match.find();
System.out.println(match.group(1));
プリントアウト
cream
Javaで正規表現を使ってみてください。以下のコード スニペットを参照してください。
String matched = "";
Pattern pattern = Pattern.compile("\\((.*?)\\)");
Matcher matcher = pattern.matcher("(20)");
if (matcher.find()) {
matched = matcher.group(1);
}
System.out.println(matched);