2017-03-22 76 views
0

我有一個包含鏈接列表的文件。鏈接全部採用/pagename.htm的格式。我試圖使用preg_replace_callback來獲取所有這些頁面名稱,但回調函數永遠不會被調用。我相信它與正則表達式有關,但我不知道如何解決它。請有人指出這個問題。使用preg_replace_callback獲取頁面名稱

return preg_replace_callback("/^(\/(.*?)\.htm)$/", "HandleLinks", $filenames); 

    function HandleLinks($matches) { 
     echo 'match '.$matches[1].'<br>'; 
     return $matches; 
    } 
+2

給我的文件名 –

+1

的示例串顯示'$ filenames'內容 – RomanPerekhrest

+0

的文件名會像/bob.htm ,/sally.htm,/fred.htm或/anyname.htm。唯一不變的是他們將以/開頭,並以.htm結尾。在/之前會有文本,並且可能會在.htm之後。所以一個字符串可能是「BoboSally,依此類推。 – user3052443

回答

0

我能得到這個用了以下工作:

preg_replace_callback("/(\/(.*?)\.htm)/", "HandleLinks", $filenames);