我真的很困惑PHP的正則表達式。PHP:正則表達式搜索一個文件中的模式,並撿起它
無論如何,我現在無法閱讀整個教程的事情,因爲我有一堆html中的文件,我必須在那裏儘快找到鏈接。我想出了一個用php代碼實現自動化的想法,它是我知道的語言。
,所以我想我可以用戶此腳本:
$address = "file.txt";
$input = @file_get_contents($address) or die("Could not access file: $address");
$regexp = "??????????";
if(preg_match_all("/$regexp/siU", $input, $matches)) {
// $matches[2] = array of link addresses
// $matches[3] = array of link text - including HTML code
}
我的問題是$regexp
我需要的模式是這樣的:
href="/content/r807215r37l86637/fulltext.pdf" title="Download PDF
我要搜索並獲得/content/r807215r37l86637/fulltext.pdf
從我上面有許多文件中。
有幫助嗎?
==================
編輯
標題屬性是對我和所有的人,我想重要的是,在題爲
title =「Download PDF」
呃。爲什麼xpath如果你只做一個nodename搜索?爲什麼不只是`$ dom-> getElementsByTagName('a');`?我可以理解xpath,如果你做了$ x-> query('// a [contains(@title,「Download Pdf」)]');`這將返回完全匹配... ;-) – ircmaxell 2011-02-11 20:31:40
@ircmaxell,你完全正確.`getElementsByTagName()`可能是一種更有效的方法。 – 2011-02-11 20:35:26
@safaali在查詢中,更改`@ title ='將Pdf'`下載到`@ class ='nameOfClass'`或使用`包含(@title,'下載PDF')`。即使他們有額外的東西,包含會抓住他們。 – 2011-02-11 20:46:30