スラッシュを取り除いてください。あなたはJavaでそれらを必要としません。また、正規表現のJavaの風味は/g
と/i
のようなスイッチを認識しません。それらはjava.util.regex.Pattern
の定数で制御されます。
Javaの世界で意味をなさないJavascript正規表現スイッチは、/i
と/m
です。これらはPattern.CASE_INSENSITIVE
とPattern.MULTILINE
にマップされています(Pattern
クラスから正規表現を作成する際にこれらのスイッチを使用することも、インラインで使用することもできます - 後で説明します)。
/g
はマップされませんが、String.replaceAll
とString.replaceFirst
を使用して置換動作を制御できます。
が動作するようにコードを取得するには、このような何かをする必要があると思います:
strOutput.replaceAll("{{[^]*?}}", "");
あなたはスイッチを使用したい場合は、正規表現の先頭によう(?i)
を何かを追加行う必要があります。
String.replace
を使用することはできません。第1引数にはCharSequence
が入り、正規表現ではないからです。
また、String
クラスが提供する「クイック正規表現」のメソッドは、期待通りに機能しない可能性があります。これは、たとえばmatches
の正規表現としてパターン(abc
としましょう)を指定すると、Javaが認識する実際のパターンは^abc$
になるからです。したがってabc
は一致しますが、bc
は一致しません。
さらに詳しい情報がありますhereです。
作成したJavaを投稿できますか?エラーが発生しましたか? –