我需要问你一些关于我的问题的东西。试着想象一下,有一个像: “23221323,213213,123213 ,,,”
我一直在寻找几个网站,但我找不到任何东西。我需要一个关于如何删除字符(,)的正则表达式。
我的意思是,我想删除最后一个,如果它更多的是1:
示例:
“2323,3434,2332”==>好的
“3434,21321,45454 ,,,, ==> BAD。你必须删除最后3个,只允许1个决赛。
实际上我在java中有一些东西可以工作:
String sCadena="asd,";
CharSequence cs1 = ",,";
CharSequence cs2 = ",,,";
CharSequence cs0 = ",";
if(sCadena.contains(cs2)){
sCadena=sCadena.substring(0, sCadena.length() - 3);
}
else if (sCadena.contains(cs1)){
sCadena=sCadena.substring(0, sCadena.length() - 2);
}
else if (sCadena.contains(cs0)){
sCadena=sCadena.substring(0, sCadena.length() - 1);
}
}
但我想制作一个正则表达式来避免这种情况,因为如果用户输入了很多(,),我必须实现更多,如果要控制它....
任何想法??
答案 0 :(得分:1)
这应该适合你:
public static void main(String[] args) {
String s = "23221323,213213,123213,,,";
s = s.replaceAll(",+$",","); // replaces all trailing commas with a single one
System.out.println(s);
}
O / P:
23221323,213213,123213,