建議你向 Adblock-ChinaList 詢問
http://groups.google.com/group/adblock-chinalist不過他們大概會建議你訂閱ChinaList ,而非使用此難看又不易維護的正則。
====
編輯新增內容:
看到
www.firefox.net.cn 的一討論主題,我有些補充;
一般來說,功能越強大效能越低,正則很強大,他的強項不在效能,而在泛用性的比對。
代碼:
/(\.|\/)(ad|banner)(s)?(\d)*(\.|\/|_)/
撇開效能不提,上面這條正則寫的很漂亮,短而易懂,目標明確,主要針對ad, banner關鍵字,這兩個關鍵字選的很合理。換作一般寫法,可能要寫上好幾條
代碼:
.ad.
.ads.
.banner.
.banners.
*/ad/*
*/ads/*
!---以下省略
不過我建議你把這條正則寫成更易於維護的形式
代碼:
/(\.|\/)(ad|ads|banner|banners)[0-9]*(\.|\/|_)/
(\.|\/)比對的樣式為『.』或『/』,(ad|ads|banner|banners)比對『ad』、『ads』、『banner』或『banners』,[0-9]*比對零到無限多個數字,(\.|\/|_)比對『.』、『/』或『_』。
這樣寫,易懂也易於擴充,比如說,我要加入adsense,只要這樣寫
代碼:
/(\.|\/)(ad|ads|adsense|banner|banners)[0-9]*(\.|\/|_)/
如果你沒訂閱過濾規則或只訂閱ChinaList,可以考慮使用上面那條規則。如果訂閱了很多規則ChinaList+EasyList,再用這條規則,那真是脫褲子放屁,EasyList本身就蒐羅了.au/ads/、.br/ads/、/adsense2、/banner_js.*?等規則。
boyewell在
另一個討論主題提出的規則,超長的一條,不建議使用,因為boyewell大概也沒看懂它做了什麼,要是看懂了,boyewell也不會寫出該文的第一條正則,因為超長的一條完全做完第一條正則所作的事,同時使用兩條,疊床架屋,嫌CPU閒著沒事找事幹麼?
最後的建議,
使用你看得懂的正則,瞭解你付出的代價,效能、誤殺等等。