在一个字符串中的符号两端添加空格
如
a=b,c=d,e=123.5,string.getchar()
格式化为
a = b , c = d , e = 123.5 , string . getchar ( )
当.作为小数点时两端无空格
对于a>=b,>=之间不再添加空格,即a >= b
这是我写的,split用于指定符号两端添加的符号,可以不是空格
一运行就死在那里了……
private boolean isPunct(char c){
if(c>=33&&c<=47 || c>=58&&c<=64 || c>=123&&c<=126) return true;
else return false;
}
public String formater(String s, char split){
StringBuilder line = new StringBuilder(s);
for(int i = 0; i<=line.capacity(); i++){
if(isPunct(line.charAt(i))){
if(isPunct(line.charAt(i+1))){//double punctuations
line.insert(i-1, split);
line.insert(i+2, split);
}else if(line.charAt(i) == '.' && Character.isDigit(line.charAt(i+1)))
break; //a float
else{ line.insert(i-1, split); line.insert(i+1, split);
}
}
}//for
return line.toString();
}