3
在Apache的配置文件,還有就是避免gzip壓縮的圖像的行:是什麼意思?
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
我不相信有可能存在一個.gif
文件名一樣myfile.*:gif
。
那麼,是什麼?:
是什麼意思?
在Apache的配置文件,還有就是避免gzip壓縮的圖像的行:是什麼意思?
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
我不相信有可能存在一個.gif
文件名一樣myfile.*:gif
。
那麼,是什麼?:
是什麼意思?
這個特定部分(?:gif|jpe?g|png)
幾乎是完全一樣的事情(gif|jpe?g|png)
。
的此不同的是,第一個將無法「捕捉」括號中的組。換句話說,在查看比賽時,第一個例子中的內容不會被包含爲特殊組。
通常,當你在括號括起來的項目,它被稱爲「捕獲組」。換句話說,在查看將正則表達式與文本進行匹配的結果時,括號中的內容將被放入一個「組」中,以供以後檢查。當您使用(?:stuff)
時,括號內的內容仍然組合在正則表達式中,但它不被視爲捕獲組。
這可能是有益的,如果你想了一堆圖片的文件名匹配,機器人無法捕捉不是文件名多:
"([^.]\.)(?:gif|png|tiff)"
在匹配時對這個表達式文件,只有文件名會被捕獲。文件擴展名不會是因爲它不在捕獲組中。
+1我刪除我的答案,因爲這是更好的解釋,只是添加的鏈接,可幫助... http://www.regular-expressions.info/brackets.html – Vojta 2011-01-26 16:50:39