2012-11-08 66 views
1

我需要一個JavaScript regex對象帶來後退符號的任何匹配字符串中的, 取例如以下字符串:JavaScript的正則表達式來帶回所有符號匹配?

input = !"£$[]{}%^&*:@\~#';/.,<>\|¬` 

然後將以下代碼:

input.match(regExObj,"g"); 

將返回的數組的匹配:

[[,!,",£,$,%,^,&,*,:,@,~,#,',;,/,.,,,<,>,\,|,¬,`,]] 

我試過以下,沒有運氣。

match(/[U+0021-U+0027]/g); 

我不能使用以下內容,因爲我需要允許不使用ascii字符,例如中文字符。

[^0-9a-zA-Z\s] 
+1

到目前爲止,你有什麼,你卡在哪裏? – Jasper

+1

你可以使用這個'[^ 0-9a-zA-Z \ s]' – Anirudha

+0

@ Fake.It.Til.U.Make.It我不能使用[^ 0-9a-zA-Z \ s],因爲這個應用程序允許輸入noneascci字符,並且將輸入限制爲僅英文字母。 – Xerxes

回答

2
var re = /[!"\[\]{}%^&*:@~#';/.<>\\|`]/g; 
var matches = []; 
var someString = "aejih!\"£$[]{}%^&*:@\~#';/.,<>\\|¬`oejtoj%"; 
while(match = re.exec(someString)) { 
    matches.push(match[1]); 
} 

獲取

['!','"','[',']','{','}','%','^','&','*',':','@','~','#',''',';','/','.','<','>','\','|','`','%] 
1

什麼

/[!"£$\[\]{}%^&*:@\\~#';\/.,<>|¬`]/g 

相關問題