2016-11-04 51 views
0

如何從字符串中刪除「/」以外的特殊字符?我應該使用什麼正則表達式?如何刪除「/」以外的特殊字符?

"/[^a-z0-9_\s-]/" 

即時通訊使用此正則表達式。它不工作。

+1

只需添加'\ /'的否定類'內[^ A-Z0-9 _ \ S - \ /]' –

回答

6

當在/.../正則表達式中使用/時,需要使用反斜槓進行轉義。或者,您可以使用Regex構造函數來避免必須轉義//[^\/]/new Regex("[^/]")都將匹配除/之外的任何字符。

要刪除任何特殊字符,但/,它取決於你所說的特殊字符,但我會使用/[^a-zA-Z0-9\/]/
如果你不介意下劃線,你可以使用/[^\w\/]/

它僅匹配一個字符,因此您可能會想要使用g全局標誌:/[^a-zA-Z0-9\/]/g

0

試試這個,以及

input.replace(/\W/g, function(match){ return (match == "/" ? match : "") }); 

function replaceExceptChar(input, specialChar) 
 
{ 
 
    return input.replace(/\W/g, function(match){ return (match == specialChar ? match : "") }); 
 
} 
 

 
console.log(replaceExceptChar("asdasd2323(*(&*/", "/"));