我想用空白替換特殊字符。所以,我想正則表達式不能替代特殊字符
this.name.replace("[^a-zA-Z]+", "").trim()
我wnat下面的字是000 VEKTOR
OOO 「VEKTOR」
我想用空白替換特殊字符。所以,我想正則表達式不能替代特殊字符
this.name.replace("[^a-zA-Z]+", "").trim()
我wnat下面的字是000 VEKTOR
OOO 「VEKTOR」
String.replace
需要一個文字的第一個參數。 replaceAll
使用一個正則表達式
name = name.replaceAll("[^a-zA-Z ]+", "");
的replace
文檔說:
替換該字符串與指定字面替換序列字面靶序列匹配的每個子字符串。
它不會帶正則表達式。
的replaceAll
文檔說:
替換此字符串給定正則表達式與給定替換匹配的每個子字符串。
所以,你可以使用:
this.name.replaceAll("[^a-zA-Z]+", "").trim();
您也可以使用replaceFirst
正則表達式,但不是在這裏。
另外,在評論中你說你已經嘗試過了。我懷疑這是因爲你只需使用:
this.name.replaceAll("[^a-zA-Z]+", "").trim();
但是Java中的字符串是不可改變,不要自行改變。 因此,你應該使用:
this.name = this.name.replaceAll("[^a-zA-Z]+", "").trim();
'this.name.replaceAll( 「[^ A-ZA-Z] +」, 「」).trim()' –
替換應該接受[噸字符串作爲第一argumenet不正則表達式。 –
已經嘗試過,並不工作 – Luxy