我目前正在使用此正則表達式:如何從字符串的開頭和結尾刪除符號,但某些符號除外?
/^[^a-z\d]*|[^a-z\d]*$/gi
此檢查在一個字符串的開始和結束的象徵。
不過,我想從被刪除排除這些4個符號:
(
)
[
]
如何修改我的正則表達式,這樣它不會刪除這些符號?
我目前正在使用此正則表達式:如何從字符串的開頭和結尾刪除符號,但某些符號除外?
/^[^a-z\d]*|[^a-z\d]*$/gi
此檢查在一個字符串的開始和結束的象徵。
不過,我想從被刪除排除這些4個符號:
(
)
[
]
如何修改我的正則表達式,這樣它不會刪除這些符號?
然後你可以將它們添加到排除列表:
/^[^\(\[\)\]a-z\d]*|[^\(\[\)\]a-z\d]*$/gi
(如果我理解正確的話,你要刪除所有的符號了這些符號之一的第一次出現 - 如果不是,這不會是一個正則表達式,我認爲)
沒有必要轉義字符類中的'()['(使表達式更易讀)。 –
@ FelixKling:好的,我不知道這一點。對於我個人的用途,我寧願逃避它們,因爲如果我看到正則表達式的某處,我可以第一眼看到這些符號沒有語法的味道。 – urzeit
這裏是Fiddle
它可以消除所有的特殊字符包括()[]
var test = "([xxxx † yyyy § zzzz)]";
alert(test.replace(/[`[email protected]#$%^&*()_|+\-=?;:'",.<>\{\}\[\]\\\/]/gi, ''));
這將在字符串中的任何位置替換**字符,而不是在開頭和結尾處...... – Jerry
只需將它們添加到角色類。 –