我有一个String(StringTo)
如
John [0775678899] ,Ann [0776789988] ,Mary [0777789900]
但我需要格式化字符串以将其显示为:
John, Ann, Mary
我尝试使用以下方法,但没有给我预期的结果:
StringTo = StringTo.replace("//[^10] ,/", ", ");
有人可以告诉我有什么问题或任何其他计算方法吗?
\[\d+\]
用空字符串替换正则表达式
试试这个,它将正确格式化空白:
StringTo = StringTo.replaceAll("\\s*\\[\\d+\\]\\s*(,?)", "$1 ");
输入:
John [0775678899] ,Ann [0776789988] ,Mary [0777789900]
输出:
John, Ann, Mary
如果我理解正确 - 你需要删除里面的所有数字[]
。试试这个:
StringTo.replaceAll("\\[.*?\\] ","");
public static void main(String[] args) {
String s = "John [0775678899] ,Ann [0776789988] ,Mary [0777789900]";
String[] ss = s.split(",");
ArrayList<String >name = new ArrayList<String>();
for(int i = 0; i< ss.length; i++){
String[]splitted = ss[i].split("\\[");
name.add(splitted[0]);
}
System.out.println(name);
}
输出:
[John , Ann , Mary ]