文字列内のコンマで区切られた数字を削除したい:
String s= "1000, 2000, 3000, 4000, 1000";
s= s.replace("1000","");
System.out.println(s);
結果は次のとおりです。
", 2000, 3000, 4000,"
先頭と末尾のコンマもカットしたいので、期待される結果は次のとおりです。
"2000, 3000, 4000"
これどうやってするの?
私は使うだろう
String s = "1000, 2000, 3000, 4000, 11000, 1000";
s = s.replaceAll("\b(1000, |, 1000)\b", "");
System.out.println(s);
版画
2000, 3000, 4000, 11000
または、適切なリストを使用します
List<Integer> ints = new ArrayList<Integer>(Arrays.asList(
1000, 2000, 3000, 4000, 1000, -1000, 11000 ));
while(ints.remove((Integer) 1000));
System.out.println(ints);
版画
[2000, 3000, 4000, -1000, 11000]
本当に文字列を使用する必要がある場合は、次のことができます
String s = "1000, 2000, 3000, 4000, 1000, -1000, 11000";
List<String> ints = new ArrayList<String>(Arrays.asList(s.split(", ")));
while (ints.remove("1000")) ;
System.out.println(ints);
版画
[2000, 3000, 4000, -1000, 11000]
この質問は に関連してJava
いますが、誰かが同じことを達成したい場合Javascript
、その解決策は
var s = "1000, 2000, 3000, 1000, 4000, 11000, 1000";
s = s.replace(/(1000, |, 1000)/g, "");
alert(s);
2000, 3000, 4000, 11000
String s= "1000, 2000, 3000, 4000, 1000";
s= s.replace("1000","");
String[] spl=s.split(',');
String result="";
for(int i=0;i<spl.length;i++)
{
if(spl[i].length()>1)//for space
result+=spl[i]+",";
}
result=result.substring(0,result.length()-2);
System.out.println(result);