可以在这里使用Java String格式

时间:2012-11-06 05:08:09

标签: java string-formatting

我有一种情况需要在UI中显示带有一些空格的字符串。这是为了更好的可读性。

例如,如果我的数据是“1234567890”,我想将其显示为“123 456 7890”。我想知道这是否可以使用Java的String格式方法完成?

4 个答案:

答案 0 :(得分:1)

不,你必须实现自己的代码。有关String API,请参阅here

答案 1 :(得分:1)

我用replaceAll做。

String test = "1112223333";
System.out.println(test.replaceAll("(.{3})(.{3})(.{4})", "$1 $2 $3"));

这使用正则表达式(.{3})(.{3})(.{4}) .{x}匹配任何内容。 {x}是次数。我将它括在括号(.{3})中以捕获匹配在$ 1,$ 2和$ 3中的字符串。

所以$ 1 =" 111",$ 2 =" 222"和$ 3 =" 3333"

答案 2 :(得分:0)

看起来您正在尝试格式化电话号码?您可以使用DecimalFormat,定义消息格式并使用原始字符串的子字符串创建String[]

答案 3 :(得分:0)

是的,你可以用String.format()来做 首先,您可以将数组中的字符串拆分为

a [0] =“123”

一个[1] = “456”

一个[2] = “7890”

然后使用以下

String.format("%1$3s %2$3s %3$3s",a );