PHPスクリプト<?=str_replace(array('(',')','-',' ','.'), "", $rs["hq_tel"])?>
これは、文字配列を取り、文字列中の文字があれば置換する文字列置換関数です。関数のJava同等のものはありますか?私はいくつかの方法を見つけましたが、ループやいくつかのステートメントを繰り返して使用していますが、Javaのような単一行のソリューションは見つかりませんでした。Javaの文字列から複数の文字を置換する
ありがとうございます。
PHPスクリプト<?=str_replace(array('(',')','-',' ','.'), "", $rs["hq_tel"])?>
これは、文字配列を取り、文字列中の文字があれば置換する文字列置換関数です。関数のJava同等のものはありますか?私はいくつかの方法を見つけましたが、ループやいくつかのステートメントを繰り返して使用していますが、Javaのような単一行のソリューションは見つかりませんでした。Javaの文字列から複数の文字を置換する
ありがとうございます。
次のような正規表現を使用することができます
//char1, char2 will be replaced by the replacement String. You can add more characters if you want!
String.replaceAll("[char1char2]", "replacement");
最初のパラメータはregex
で、2番目のパラメータがreplacement
です。
特殊文字をエスケープする方法については、docsを参照してください(必要な場合に備えて!)。
String.replaceAll(String regex, String replacement)
あなたのソリューションはここ..です
あなたはあなたができる正規表現について知らない場合は、特定の特殊文字
str.replaceAll("[()?:!.,;{}]+", " ");
を交換して、すべての特殊文字
str.replaceAll("[^\\dA-Za-z ]", "");
を交換してくださいもっと精巧なものを使用してください:
private static ArrayList<Character> special = new ArrayList<Character>(Arrays.asList('(', ')', '-', ' ', '.'));
public static void main(String[] args) {
String test = "Hello(how-are.you ?";
String outputText = "";
for (int i = 0; i < test.length(); i++) {
Character c = new Character(test.charAt(i));
if (!special.contains(c))
outputText += c;
else
outputText += "";
}
System.out.println(outputText);
}
出力: Hellohowareyou?
EDIT(ループなしではなく正規表現で):
public static void main(String[] args) {
String test = "Hello(how-are.you ?)";
String outputText = test.replaceAll("[()-. ]+", "");
System.out.println(outputText);
}
私はこれを行うための単一の行はJavaで箱から出してサポートされていることを信じています。しかし、あなたはこれを行う関数を自由に書くことができます。次に、同様の方法でそれを呼び出すことができます。ありがとうございました。 – midhunhk
'String'クラスに対して' replaceAll'を使用して、置き換える文字列と一致する適切な正規表現を与えます。 – cmbaxter