[英]PREG_MATCH check all words and condition
我寫了一個正則表達式,它以OR條件搜索搜索詞,使得三個單詞都具有字符串形式,而與它們的順序無關。 現在,我只想放置一個AND條件,因為我想以不同順序將所有三個單詞同時獲得。
這是我的preg_match()
常規表達式。
$myPregMatch = (preg_match("/\b^(Word1|Word2|Word3)\b/", "Word4 Word2 Word1 Word3 Word5 Word7"));
if ($myPregMatch){
echo "FOUND !!!";
}
我想在字符串"Word4 Word2 Word1 Word3 Word5 Word7"
中找到所有單詞的順序不同。 如果樣本字符串是"Word5 Word7 Word3 Word2"
則不應返回。
檢查每個單詞可能更快
$string = "Word4 Word2 Word1 Word3 Word5 Word7"; // input string
$what = "Word2 Word1 Word3"; // words to test
$words = explode(' ', $what); // Make array
$i = count($words);
while($i--)
if (false == strpos($string, $words[$i]))
break;
$result = ($i==-1); // if $i == -1 all words are present in input string
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.