英国の郵便番号では、すべての文字を大文字のAに、すべての数字を9に置き換えたいと思います。
たとえば、CH51EFはAA99AAになりますEC1N4DHはAA9A9AAになります
これは単一のRegEx.Replaceで可能ですか、それとも2つの別々のRegEx.Replaceステートメントが必要ですか?
英国の郵便番号では、すべての文字を大文字のAに、すべての数字を9に置き換えたいと思います。
たとえば、CH51EFはAA99AAになりますEC1N4DHはAA9A9AAになります
これは単一のRegEx.Replaceで可能ですか、それとも2つの別々のRegEx.Replaceステートメントが必要ですか?
使用している言語をまだ言っていません。正規表現を提供します。
2つの操作:
[A-Z]
および置換:A
\d
および置換:9
Javaでは、次のようになります。
String postcode = "CH5 1EF";
String result = postcode.replaceAll("[A-Z]", "A").replaceAll("\\d", "9");
これには2つの置換が必要です。最初にすべての[A-Za-z]を「A」に置き換え、次にすべての[0-9]を「9」に置き換えます。単一の表現でこれを行う方法があったとしても、それを読んで維持することは悪夢です。