|
| (origin:Proxomitron Help File sec. Filter Creation) 剛剛看到過濾規則裡面的內容時,應該會嚇一跳吧?怎麼這麼複雜,看都看不懂!別擔心,他的原理是很簡單的。Proxomitron基本上把他想成一個很強的文字「搜尋—取代」的程式就可以了,只不過對象不同罷了;Word是對文件,Proxomitron是對網頁的HTML檔案(還不是一樣!)。你可以搜尋任何字(串),把他換成你想要的文字,進而改變網頁的特定部分。 「*」星號,他會符合任何字串,還記得*.*這個DOS時代的東東嗎?舉例來說,你想要找以「nd」結尾的字,你可以用「*nd」,那你會找到像是「and」、「pound」而不會找到「but」;如果是「john*smith」那就會有「John W Smith」、「John 'Bubba' Smith」,更不用提「John Smith」了。 將上面的概念引入HTML,譬如說你想要找所有的圖片標記(image tag)。所有的圖片標記都會以「<img」起頭而以「>」結尾(廢話,要不然要HTML做什麼?^_^),中間可以有一些其他的東東。那我們就可以用「<img * >」來找圖片,他就好像說: 找到任何以「<img」起頭,中間可能有其他文字,最後以「>」結尾的東東。 在取代的部分你可以將圖片標記改寫成任何你想要的東東,你甚至於可以把原始字串中的特定部分(向是圖片的URL)保留,好比說: Matching: <img * src=(\w)\1 * > Replace: <img src=\1 border=1 > 這裡有些新東東出現了,首先是「\w」。他會找到任何連續字串,遇到空白就停止,像是:e3+?`~ as3>3 ,在找URL時很有用。「\1」(是一,不是小寫的L)是指在「src=」和「* 」之間的所有字串並把字串放到變數「1」裡面,在取代的部分再把這個字串放到「src=」後面。Proxomitron可使用十個變數(\0—\9)。 不懂?繼續看下去就懂了。我們想要把下面這個標記改寫: <img align=left src="bison.gif" alt="My pet bison Phil" > 改寫成 <img src="bison.gif" border=1 > 藍色是第一個星號「*」符合的部分。 紅色是「(\w)\1」符合的部分。 綠色是第二個星號「*」符合的部分。 注意:紅色和藍色部分在取代的部分中就消失了。只有我們要留下的部分才用變數「\1」保留。就是用這樣的原理我們可以將HTML改寫!例如說我們想要將剛剛的例子改成一個連結,我們可以把他改成: Matching: <img * src=(\w)\1 * > Replace: <a
href=\1 > a picture </a> <img align=left src="bison.gif" alt="My pet bison Phil" > 會變成… <a href="bison.gif" > a picture </a> |