2012-02-15 103 views
0

我需要去除相對URL的目錄級別並用下劃線替換斜線。 其中一些相對URL包含一個或兩個級別(../或../../)。現在我正在使用:JavaScript替換相對路徑

$('area, a').click(function() { 
     cleanPath = $(this).attr('href').replace(/'..'/g, "").replace(/\//g, "_")); 
}); 

但這不起作用。有類似的問題發佈在這裏,但似乎沒有解決我的具體問題。顯然,我不是RegEx專家。 任何人都可以幫我解決這個問題嗎?

+0

你能更具體嗎?你想把它們改成完整的網址嗎? – MiJyn 2012-02-15 00:18:35

回答

0

您的正則表達式,/'..'/g會查找所有匹配的撇號,然後立即查找任何字符,緊接着是任何字符,然後是另一個撇號。這是因爲.匹配除換行符之外的任何字符(除非啓用多線模式)。

嘗試之一:

/\.\./g 

/[.]{2}/g 

前面加上一個反斜槓,您正則表達式對待.作爲文字.(即,一個週期)。

通過[.]包圍.,正則表達式也對待.作爲文字.{2}爲正好2 OCCURENCES,背到背)。