web-dev-qa-db-ja.com

文字列からすべてのcharを削除する

私はこれを使うことができます:

String str = "TextX Xto modifyX";
str = str.replace('X','');//that does not work because there is no such character ''

Javaで文字列から文字Xをすべて削除する方法はありますか?

私はこれを試してみましたが、私が望むものではありません:str.replace('X',' '); //replace with space

290
evilReiko

CharSequenceではなく String引数を取るオーバーロード (例:char)を使ってみてください。

str = str.replace("X", "");
489
LukeH

を使う

public String replaceAll(String regex, String replacement)

働くでしょう。

使い方はstr.replace("X", "");です。

実行中

"Xlakjsdf Xxx".replaceAll("X", "");

以下を返します。

lakjsdf xx
41
Michael Wiles

Java Stringsで何かしたいのなら、 Commons Lang StringUtils を見てみるのがいいでしょう。

StringUtils.remove("TextX Xto modifyX", 'X');
22
String test = "09-09-2012";
String arr [] = test.split("-");
String ans = "";

for(String t : arr)
    ans+=t;

これは、文字列から文字を削除した例です。

7
JavaChamp

私はこの場合RegExを使うのが好きです。

str = str.replace(/X/g, '');

ここでgはグローバルを意味するので、それはあなたの文字列全体を通り、すべてのXを ''に置き換えます。 Xとxの両方を置き換えたい場合は、単にこう言います。

str = str.replace(/X|x/g, '');

(ここで私のフィドルを参照してください: フィドル

4
Gerrit B

こんにちはこのコードを試してみてください

public class RemoveCharacter {

    public static void main(String[] args){
        String str = "MXy nameX iXs farXazX";
        char x = 'X';
        System.out.println(removeChr(str,x));
    }

    public static String removeChr(String str, char x){
        StringBuilder strBuilder = new StringBuilder();
        char[] rmString = str.toCharArray();
        for(int i=0; i<rmString.length; i++){
            if(rmString[i] == x){

            } else {
                strBuilder.append(rmString[i]);
            }
        }
        return strBuilder.toString();
    }
}
2
Raju

Replaceの代わりにreplaceAllを使う

str = str.replaceAll("X,"");

これはあなたに望ましい答えを与えるはずです。

2
Ayushi Jain

これは文字列として渡されたすべての文字を削除するラムダ関数です

BiFunction<String,String,String> deleteChars = (fromString, chars) -> {
  StringBuilder buf = new StringBuilder( fromString );
  IntStream.range( 0, buf.length() ).forEach( i -> {
    while( i < buf.length() && chars.indexOf( buf.charAt( i ) ) >= 0 )
      buf.deleteCharAt( i );
  } );
  return( buf.toString() );
};

String str = "TextX XYto modifyZ";
deleteChars.apply( str, "XYZ" ); // –> "Text to modify"

1
Kaplan
package com.acn.demo.action;

public class RemoveCharFromString {

    static String input = "";
    public static void main(String[] args) {
        input = "abadbbeb34erterb";
        char token = 'b';
        removeChar(token);
    }

    private static void removeChar(char token) {
        // TODO Auto-generated method stub
        System.out.println(input);
        for (int i=0;i<input.length();i++) {
            if (input.charAt(i) == token) {
            input = input.replace(input.charAt(i), ' ');
                System.out.println("MATCH FOUND");
            }
            input = input.replaceAll(" ", "");
            System.out.println(input);
        }
    }
}
0