我有一個包含所有不同類型的鏈接(相對,絕對,根相對)的HTML文本的字符串。我需要一個可以由PHP的preg_replace
執行的正則表達式來替換所有相關鏈接和根相關鏈接,而不會觸及任何其他鏈接。我已經有了根路徑。正則表達式來替換相對鏈接與根相對鏈接
替換鏈接:
<tag ... href="path/to_file.ext" ... > ---> <tag ... href="/basepath/path/to_file.ext" ... >
<tag ... href="path/to_file.ext" ... /> ---> <tag ... href="/basepath/path/to_file.ext" ... />
非接觸鏈接:
<tag ... href="/any/path" ... >
<tag ... href="/any/path" ... />
<tag ... href="protocol://domain.com/any/path" ... >
<tag ... href="protocol://domain.com/any/path" ... />
它必須是正則表達式嗎?使用DOM類可以提供更準確的結果。 – webbiedave 2010-05-19 22:28:01
它必須是正則表達式,因爲我不能保證DOM對於任何基本的DOM閱讀器都能夠正確解析有效。 – 2010-05-19 22:32:34