嗨,我想替換字符串中的字符。 我的問題是,首先你不知道它是哪個字符,所以在某些情況下,當我的字符例如'+'時,我收到一條錯誤消息。我不希望我的字符被解釋爲正則表達式,那麼我該怎麼做?替換字符串中的字符
五月代碼應該是這樣的:
String test = "something";
char ca = input.chatAt(0);
input = input.replaceAll("" + ca, "");
我希望你能幫助我。
嗨,我想替換字符串中的字符。 我的問題是,首先你不知道它是哪個字符,所以在某些情況下,當我的字符例如'+'時,我收到一條錯誤消息。我不希望我的字符被解釋爲正則表達式,那麼我該怎麼做?替換字符串中的字符
五月代碼應該是這樣的:
String test = "something";
char ca = input.chatAt(0);
input = input.replaceAll("" + ca, "");
我希望你能幫助我。
只是不要使用正則表達式。
input = input.replace(String.valueOf(ca), "");
String
的的replaceAll
方法採用正則表達式作爲參數的String
表示。
replace
方法沒有。
請參閱API。
實際上替換方法可能不明確,如果替換,可以在「zzz」字符串中說「zz」 - >「xy」(結果將是「xyz」而不是「zxy」)。
反過來,replaceAll更靈活,它的行爲是嚴格確定的。不用說,它比較貴,比取代。
當然,在你的情況下,替換是最好的選擇。
可以使用替代(字符oldChar,字符newChar)在String類的功能,或者使用下面的功能:
String replaceChar(String input, char oldChar, char newChar){
StringBuffer sb = new StringBuffer();
for(int i = 0; i<input.length(); i++){
char c = input.charAt(i);
if(c == oldChar)
sb.append(newChar);
else
sb.append(c);
}
return sb.toString();
}
你想要什麼? – aelor
如果要用另一個文字字符串替換文字字符串,則使用'String.replace(from,to)'。閱讀javadoc是你必須要做的,以找到這些簡單的解決方案。 –
我的代碼完全適用於每個不是'+','*','?'的字符,但它們應該也可以用這些字符。 – user3025417