首页 > 解决方案 > 在每 N 个字符处为字符串添加分隔符 Android?

问题描述

我想在 3 个字符后加一个冒号。所以“123:456:789:0”我想打印它。我怎样才能做到这一点。它现在输出的方式:“123:4567890”

String s = "1234567890";
System.out.println(java.util.Arrays.toString(s.split("(?<=\\G.{3})")));

标签: javaandroid

解决方案


你好试试下面的正则表达式,

String s = "1234567890";
s = s.replaceAll("(.{3})", "$1:");
System.out.println(s);

更新:更新了答案,如果你不想在最后插入':',

String s = "123456789";
s = s.replaceAll("...(?!$)", "$0:");
System.out.println(s);

“...”是长度。如果你愿意,你可以改变它。因此,如果您想要像这样的 84:F3:EB:34:75:6B 作为 84F3EB34756B 的输出,请使用,

s = s.replaceAll("..(?!$)", "$0:");

推荐阅读