我想測試一個字符串的所有模式匹配的幾個單詞是單詞的開頭。如果不是所有模式都匹配,我想將查詢視爲False。單詞測試的開始正在起作用,但是我得到了重複的匹配,我覺得很驚訝,因爲一旦找到一個單詞匹配,就不會再對該單詞進行測試。也許我需要以某種方式將測試限制爲一場比賽。PHP preg_match_all與多個字
我想象,如果我是測試3分的話,那麼一個成功的測試將返回3.
返回值是在誤導你可以從例子中看到。我獲得了一個正面的價值,這比我正在測試的單詞數量還要多。在不匹配組的情況下,由於某些單詞的多次匹配,我仍然得到比要測試的單詞數更高的值。
我想我還沒有完全理解某些東西或者某種方式,我需要強制一個AND的情況。
我已經搜索了答案,但似乎沒有特定於我的問題。
$image = 'After A!!BC DEF hello bugggy bad Sled bob bobert robob Triumph 2000 Roadster clearing bobby Sledmere^August 2014^error';
$result = preg_match_all($query, $image, $matches);
$query = '#\b(bob|bug|sled)#i'; // ALL MATCH
Return Value 6 [ bob x 3, bug x 1, sled x 1]
$query = '#\b(bob|bug|led)#i'; // Two matches 'led' fails
Return Value 4 [ bob x 3, bug x 1, led x 0]
如果我沒有理解好要檢查所有的話只存在一個時間? –
不,我想知道模式中的所有單詞至少匹配一次。 – mcl