1
我想從字符串中提取的散列下面是e5e1af55bad959546ec7608cc8685fe67bc5426e
提取兩個詞
$word1 = 'btih:';
$word2 = '&dn';
$magnet = "[magnet:?xt=urn:btih:e5e1af55bad959546ec7608cc8685fe67bc5426e&dn=The+Deadly+Game+2013+DVDRip+XviD-EVO+&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80&tr=udp%3A%2F%2Ftracker.publicbt.com%3A80&tr=udp%3A%2F%2Ftracker.istole.it%3A6969&tr=udp%3A%2F%2Ftracker.ccc.de%3A80&tr=udp%3A%2F%2Fopen.demonii.com%3A1337]";
if(preg_match('/'.preg_quote($word1).'(.*?)'.preg_quote($word2).'/is', $magnet, $match)){
$upper = strtoupper($match['1']);
$generated = "http://torrage.com/torrent/".$upper.".torrent";
}
在上面的代碼中,哈希位於btih:
之間和&dn
可我知道爲什麼我的代碼不工作之間的字符串?
作品!謝謝兄弟.. really2快速回答,並解決了我的問題.. 我讀了一些教程,瞭解正則表達式。但它太混亂..我沒有選擇,只能在這裏問..再次感謝你:)你救了我的一天 – G3M
不客氣,很高興它爲你工作。 – anubhava
我又遇到了一個問題。我試着用我在問題中給出的例子,它的工作原理..但不符合我的實際情況 這是我的真實代碼 - > http://pastebin.com/qrmTyWJU .. $ result ['10' ]是一個數組 - > http://pastebin.com/19j8d4z9 .. 爲什麼正則表達式不能檢測哈希?我使用爆炸分解它們,併爲$ result得到結果['10']就像問題 – G3M