2

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

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

4

4 回答 4

1

不,您必须实现自己的代码。有关字符串 API,请参见此处

于 2012-11-06T05:11:15.357 回答
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"

于 2012-11-06T05:27:00.740 回答
0

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

于 2012-11-06T05:16:26.310 回答
0

是的,您可以使用 String.format() 首先您可以将字符串拆分为数组以具有

a[0]="123"

a[1]="456"

a[2]="7890"

然后使用以下

String.format("%1$3s %2$3s %3$3s",a );
于 2012-11-06T05:31:04.523 回答