2

英国の郵便番号では、すべての文字を大文字のAに、すべての数字を9に置き換えたいと思います。

たとえば、CH51EFはAA99AAになりますEC1N4DHはAA9A9AAになります

これは単一のRegEx.Replaceで可能ですか、それとも2つの別々のRegEx.Replaceステートメントが必要ですか?

4

2 に答える 2

2

使用している言語をまだ言っていません。正規表現を提供します。

2つの操作:

  1. 一致する正規表現:[A-Z]および置換:A
  2. 一致する正規表現:\dおよび置換:9

Javaでは、次のようになります。

String postcode = "CH5 1EF";
String result = postcode.replaceAll("[A-Z]", "A").replaceAll("\\d", "9");
于 2012-01-23T23:12:49.653 に答える
0

これには2つの置換が必要です。最初にすべての[A-Za-z]を「A」に置き換え、次にすべての[0-9]を「9」に置き換えます。単一の表現でこれを行う方法があったとしても、それを読んで維持することは悪夢です。

于 2012-01-23T23:11:13.993 に答える