2014-09-03 33 views
-1

所以我目前正在學習jQuery,最近我學習了正則表達式,並決定將其發揮作用。我所做的工作完美無瑕,但我有一種感覺,我會走很長的路。是否可以將正則表達式與多個被替換的字符結合起來?

我看過網上,我敢肯定,你可以結合正則表達式,但它看起來很混亂,我真的不明白它!

這是我有:

var trackingPlus = contentURL.text().replace(/ /g, '+') 
            .replace(/&/g, 'And') 
            .replace(/%/g, 'PC') 
            .replace(/!/g, '') 
            .replace(/£/g, '') 
            .replace(/,/g, '') 
            .replace(/\./g, '') 
            .replace(/\+>/g, ''); 

有什麼辦法來此組合成一個「東西」?

或者如果不是,可能是最後5個,因爲它們全部被替換爲無?

任何幫助,或解釋將非常感激!

謝謝!

回答

2

您可以在這裏使用character class。簡而言之,字符類是一種表示一組字符的方式,以便集合中的一個字符與相匹配。

字符類只有一個字符相匹配,所以[!£,.+]將一個字符從列表!£,.+匹配。請注意,通常的正則表達式元字符(*,+等)是字符類中的普通字符,不需要額外轉義。

var trackingPlus = contentURL.text().replace(/ /g, '+') 
            .replace(/&/g, 'And') 
            .replace(/%/g, 'PC') 
            .replace('/[!£,.+]/g', ''); 
+1

你甚至不需要爲前三個替換使用正則表達式。 :) – YMMD 2014-09-03 12:28:04

+1

@YMMD。但是......但是......堆疊在一起時它看起來非常好! :D – 2014-09-03 12:28:44

+0

這就是我認爲太哈哈!謝謝你的幫助! :) – Nick 2014-09-03 12:36:16