可否請你分享一個Java代碼段5或9位數字,轉換成美國郵政編碼格式Java代碼格式String美國郵政編碼
e.g.
Input -> Expected output
12345 -> 12345
123456789 -> 12345-6789
下面的代碼的作品,但對於5位它結束 - 。如何使用正則表達式去除這個問題?
public static void main(String[] args) throws ParseException {
String[] values = new String[]{"1234","12345","123456897"};
MaskFormatter f = new MaskFormatter("#####-####");
f.setValueContainsLiteralCharacters(false);
for(String value:values){
System.out.println(f.valueToString(value));
//System.out.println(String.format("%5s-%04s", value,value));
}
}
輸出是:
234 -
12345-
12345-6897
樓主是要求對Java,JavaScript不。 –