簡體   English   中英

從文本中刪除特殊字符

[英]remove special characters from text

我正在嘗試從給定的文本中刪除特殊字符。

我嘗試將其替換為:

var stringToReplace = 'ab風cd  👰� abc 123 € AAA';
var newText = stringToReplace.replace(/[^\d.-]/g, '');

但它不起作用。 我希望newText將是:

newText = 'ab cd      abc 123   AAA'

我試過一些正則表達式,但似乎都沒有用。 真正的問題是“風”(這類字符)。 有什么建議嗎? 謝謝!

隨便使用。

stringToReplace.replace(/\W/g, ' ');

產量

"ab cd abc 123 AAA"

您可以嘗試以下方法,

> 'ab風cd  👰� abc 123 € AAA'.replace(/[^\dA-Za-z]/g, " ")
'ab cd      abc 123   AAA'

[^\\dA-Za-z]否定的字符類,它匹配任何字符,但不匹配數字或字母。

要么

> 'ab風cd  👰� abc 123 € AAA'.replace(/[^\dA-Za-z\s]/g, "")
'abcd   abc 123  AAA'
> 'ab風cd  👰� abc 123 € AAA'.replace(/[^\dA-Za-z\s]/g, " ")
'ab cd      abc 123   AAA'

您的正則表達式不好,應該是:

var newText = stringToReplace.replace(/[^\da-z]/ig, ' ');

您可以使用/\\W/g作為正則表達式

\\W - The opposite of \\w. Matches any non-alphanumeric character.

例如:

var string = 'ab風cd  👰� abc 123 € AAA';
string = string.replace(/\W/g, ' ')
alert(string); // ab cd      abc 123   AAA

http://jsfiddle.net/vgwv6ht2/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM