Stringのような番号があり"1234567890"ます。
Stringこれをにフォーマットする必要があります"1234 5678 90"。(空白は SPACE 文字です) 誰かが Java でこれを行う方法を教えてもらえますか?
ありがとう
Stringのような番号があり"1234567890"ます。
Stringこれをにフォーマットする必要があります"1234 5678 90"。(空白は SPACE 文字です) 誰かが Java でこれを行う方法を教えてもらえますか?
ありがとう
文字列がすべて同じ長さであると仮定します。
String s1 = "1234567890";
String s2 = s1.substring(0, 3) + " " + s1.substring(4, 7) + " " + s1.substring(8, 9);
StringBuilder sb= new StringBuilder("1234567890");
sb.insert(4, ' ').insert(9, ' ');
String output= sb.toString();
正規表現ベースのバージョン
String s = "1234567890";
s = s.replaceAll("(\\d+)(\\d{2})", "$1 $2");
while(s.matches("\\d+\\d{4} \\d+")) {
s = s.replaceAll("(\\d+)(\\d{4} \\d+)", "$1 $2");
}
System.out.println(s);
出力
1234 5678 90
String input = "1234567890";
Formatter f = new Formatter(new StringBuilder(), Locale.UK);
String res = f.format("%s%5s%3s", input.substring(0, 4), input.substring(4, 8), input.substring(8, 10)).toString();
System.out.println(res);