私はできるだけ正規表現を使ってsolution to a previous questionに取り組んでいます。私のパターンは、NetBeansによるなぜこのJava正規表現は「不正なエスケープ文字」エラーを引き起こしますか?
"\d{4}\w{3}(0[1-9]|[12][0-9]|3[01])([01][0-9]|2[0-3])([0-5][0-9]){2}"
で、私は2つの違法なエスケープ文字を持っています。私はそれが\ dと\ wと関係があると推測していますが、それらは両方ともJavaで有効です。おそらく、Javaの正規表現のための私の構文はオフになっている...関係しているコードの
行全体は次のとおりです。
userTimestampField = new FormattedTextField(
new RegexFormatter(
"\d{4}\w{3}(0[1-9]|[12][0-9]|3[01])([01][0-9]|2[0-3])([0-5][0-9]){2}"
));
パターンは、Javaにとっては正当なものであり、Eclipseで動作します。 NetBeansでごめんなさい。 – codevour
興味深い。私は質問全体にコードの行全体を追加しています。エラーでもビルドしようとします...何が起こるか見てみましょう。 –
あなたはそれを文字列で使っています。\ dと\ wを\\ dと\ wでエスケープすると思います。 – codevour