2011-03-20 15 views
0

我有一個沒有任何HTML格式的純文本文件。我想在其中搜索一個單詞?我該怎麼做?而且我還希望逗號前的下一個單詞。我可以這樣做嗎?如何通過PHP在網頁中查找文本?

就意味着: 如果:"word1":"i like stackoverflow", next thing

我想找到word1這是在引號,然後我想整個短語i like stackoverflow無引號。它應該停止在那個點上。

有沒有辦法做到這一點?

感謝...

+0

http://www.tizag.com/phpT/fileread.php。然後,它只是一個問題,以循環和找到你要找的東西 – starcorn 2011-03-20 00:56:10

+0

你正在尋找正則表達式。這應該是可能的。 – 2011-03-20 00:56:36

回答

0

使用regular expression。在PHP中,您可以使用像preg_match這樣的功能來執行此操作。

對於您所描述的模式,正則表達式的代碼可能是這樣的:

$match_array = array(); 
$string_to_match = // load the string from a file and put it in this variable 

preg_match('/"([A-Za-z0-9\s]+?)":"([A-Za-z0-9\s]+?)"/', $string_to_match, $match_array); 

本場比賽的結果將被放置在$match_array

+0

嘿感謝,因爲...但我不會知道字符串「我喜歡stackoverflow」我只會知道word1 ...所以有什麼辦法來問它的下一個字或描述格式,然後問它? – 2011-03-20 01:01:08

+0

是的,這就是我上面發佈的代碼所做的。第二個參數是你正在搜索的字符串,所以我使用了你在上面發佈的字符串。我會更新代碼,使其更清晰一些。 – 2011-03-20 01:03:56

+0

嘿感謝回答和修改hansengel,但代碼沒有工作。該文件在其他服務器上。然後我查詢文件,並通過file_get_contents()函數將其傳遞給我的服務器。然後我做了你所說的任何事情。我甚至嘗試過改變值並添加substr。但最終它沒有奏效。它給了我一個空陣列。我該怎麼辦?你可以解釋我preg_match更詳細...謝謝... – 2011-03-20 02:43:16