如果我有一个类似于string="1 3 5 8 15"
的字符串,并且我想操纵该字符串,以便在每个非空格字符(总是一个数字)的前面插入一个字母,例如{ {1}}新字符串将变为D
。在我的特定代码中,如果有任何相关性,则初始字符串由用户输入,字符串字符总是单个或两位数。
答案 0 :(得分:1)
尝试一下:
str.replaceAll("^| ", "$0D");
答案 1 :(得分:0)
有很多方法可以做到。
String [] arr = str.split(" "); //split on white space
String builder = "";
for(int i=0; i<arr.length; i++){
builder += "D" + arr[i];
if(i!=arr.length-1){
builder += " ";
}
}
当然,有许多方法,因为字符串已被研究进出。我的方法在空格上拆分,并重建在每个元素前面插入“D”的字符串。
答案 2 :(得分:0)
只需替换所有数字(\ d +):
string.replaceAll("(\\d+)", "D$1");
编辑:您还可以使用
将数字大小限制为2\ d {1,2}