在SO的幫助下,我能夠從電子郵件主題行中拉出「關鍵字」以用作類別。現在我決定允許每個圖片有多個類別,但似乎無法正確說出我的問題以獲得Google的良好回覆。 preg_match停在列表中的第一個單詞處。我確信這與'急於'或簡單地用別的東西代替管道符號|
有關,但我只是看不到它。
\b(?:amsterdam|paris|zurich|munich|frankfurt|bulle)\b
。使用preg_match查找列表中的所有單詞
我目前使用的整個字符串爲:
preg_match("/\b(?:amsterdam|paris|zurich|munich|frankfurt|bulle)\b/i", "." . $subject . ".", $matches);
所有我需要做的就是把所有的這些話,如果他們存在,而不是在阿姆斯特丹停止,或任何字它首先在它正在搜索的主題中。之後,這只是處理$ matches數組的問題,對吧?
謝謝, 馬克
嘗試'preg_match_all' - http://php.net/manual/en/function.preg-match-all.php - 只需將'_all'添加到函數名稱。 – hakre 2011-06-14 23:09:50
我還會補充說'$ matches'有一些變化,有'preg_match_all' – datasage 2011-06-15 01:23:21
非常感謝!是的,$匹配確實會改變。乍一看,現在似乎是一個數組內的數組。 'print_r($ matches)'給了'Array([0] => Array([0] => paris [1] => bulle))''。我正在研究它,但有關處理這個問題的明顯建議? – Mark 2011-06-15 02:42:55