[英]How to Add spaces between a string in Java?
I have a string like我有一个字符串
String str = "A1HighriseA22-5sty.Elev.A3Elevator(s)A4WalkupA5RowHouseA6DetachedA7Semi-DetachedA8TownHouse";
the requirement is I need to add space before and after A1, like wise i need to do it for all the A's listed in the string (like space before and after A2, A3, A4, A5, A6, A7, A8).要求是我需要在 A1 之前和之后添加空格,同样我需要为字符串中列出的所有 A 执行此操作(例如 A2、A3、A4、A5、A6、A7、A8 之前和之后的空格)。 I am not sure whether it is possible or not.
我不确定这是否可能。 If yes, can you please help me on how to do that??
如果是的话,你能帮我看看怎么做吗?
You may use String.replaceAll
that accepts a regex, then just a capture group and add the spaces around您可以使用接受正则表达式的
String.replaceAll
,然后只是一个捕获组并在周围添加空格
String str = "A1HighriseA22-5sty.Elev.A3Elevator(s)A4WalkupA5RowHouseA6DetachedA7Semi-DetachedA8TownHouse";
String result = str.replaceAll("(A\\d)", " $1 ");
//A1HighriseA22-5sty.Elev.A3Elevator(s)A4WalkupA5RowHouseA6DetachedA7Semi-DetachedA8TownHouse
// A1 Highrise A2 2-5sty.Elev. A3 Elevator(s) A4 Walkup A5 RowHouse A6 Detached A7 Semi-Detached A8 TownHouse
If you go to more than A9
, you the muldi-digit regex如果您 go 超过
A9
,则您是多位正则表达式
str.replaceAll("(A\\d+)", " $1 ");
String str1 = "A1HighriseA22-5sty.Elev.A3Elevator(s)A4WalkupA5RowHouseA6DetachedA7Semi-DetachedA8TownHouse";
String str="";
for(int i=0;i<str1.length();i++){
if(str1.charAt(i)=='A' && (str1.charAt(i+1)=='1' || str1.charAt(i+1)=='2' || str1.charAt(i+1)=='3' ||
str1.charAt(i+1)=='4' || str1.charAt(i+1)=='5' || str1.charAt(i+1)=='6' || str1.charAt(i+1)=='7' ||
str1.charAt(i+1)=='8' || str1.charAt(i+1)=='9')){
str+= " "+str1.charAt(i)+""+str1.charAt(i+1)+" ";
i++;
}else{
str+=""+str1.charAt(i);
}
}
System.out.println(str);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.