替换字符但只能更换一次

时间:2016-06-04 09:34:39

标签: java replace

如何将文本替换为其他内容但只替换一次,因为字符可能会被替换两次。例如,替换" 0123456789"至" 30 31 32 33 34 35 36 37 38 39"使用.replace(/ 0 / g," 30")方法但是当我有.replace(/ 3 / g," 33")时,代码变得混乱,如何我只替换一次。

1 个答案:

答案 0 :(得分:1)

可以这样做:

String value = "0123456789";
Pattern pattern = Pattern.compile("(\\d)");
System.out.println(pattern.matcher(value).replaceAll("3$1 "));

<强>输出:

30 31 32 33 34 35 36 37 38 39 

将所有数字替换为3 +组号1,这是此处找到的数字+空格。

NB:您有一个尾随空格,如果需要,可以通过调用String#trim()删除