对于任何英国邮政编码,我想用大写A替换所有字母,用9替换所有数字。
例如 CH5 1EF将成为AA9 9AA EC1N 4DH将成为AA9A 9AA
这可能在一个RegEx.Replace中,还是我必须有两个单独的RegEx.Replace语句?
答案 0 :(得分:2)
你还没说过你正在使用什么语言,我只是给正则表达式。
两个操作:
[A-Z]
并替换为:A
\d
并替换为:9
在java中,它看起来像:
String postcode = "CH5 1EF";
String result = postcode.replaceAll("[A-Z]", "A").replaceAll("\\d", "9");
答案 1 :(得分:0)
您需要两次替换:首先将所有[A-Za-z]替换为“A”,然后将所有[0-9]替换为“9”。即使有一种方法可以用单个表达式来实现这一点,阅读和维护它也是一场噩梦。