目標
更換主機和路徑(位置),但保留文件名(它們是不變)。正則表達式 - 獲取URL協議,主機,路徑,而不是文件名 - PCRE
無子域網址 - 不工作
這適用於主機(域)是至少有一個子域(例如,「www.somedomain.com」),但沒有隻域,以獲得路徑+ TLD(例如 'somedomain.com')
(http[s]?:\/\/([^:\/\s]+)(\/\w+)*\/)+
在下面的HTML代碼段
junk before tag <img src="https://somedomain.com/wp-content/uploads/2017/10/someimage.jpg" alt="" />Random text after
甲PCRE發動機只捕獲:
https://somedomain.com/
URL 與子域 - 工程
在下面的HTML片段(域有一個子域)
junk before tag <img src="https://www.somedomain.com/wp-content/uploads/2017/10/someimage.jpg" alt="" />Random text after
一個PCRE引擎捕獲整個URL(保存文件):
https://www.somedomain.com/wp-content/uploads/2017/10/
問題
我怎樣才能調整正則表達式捕捉到完整的協議,域和路徑(而不是文件名)爲img src=""
網址有子域以及那些沒有子域?
所以呢?我並不十分清楚所需的輸出是什麼。 – CAustin
在第一個例子中,我想要'https:// somedomain/wp-content/uploads/2017/10 /',但我只能得到'https:// somedomain /'。第二個例子按預期工作。 – Baker