我有我要从String类型的参数获取的联系电话。
String pharmacyPhone = "123456789";
在这里我要添加-在每3位数字之后和4位数字之前
所以输出将变得像pharmacyPhone = 123-456-789.
那么如何实现呢?
答案 0 :(得分:3)
一种方法使用正则表达式替换:
String pharmacyPhone = "123456789";
pharmacyPhone = pharmacyPhone.replaceAll("(.{3})(?=.)", "$1-");
System.out.print(pharmacyPhone);
123-456-789
模式(.{3})(?=.)
通过匹配和一次捕获三个数字来工作,只要后面至少再有一个数字。然后,将其替换为捕获的三位数,后跟破折号。正向(?=.)
的前瞻性确保了我们不会在字符串的末尾添加破折号。