たくさんの文字列があり、それぞれに色が含まれているかどうかを確認する必要があります。
例えば :
- 空の鳥
- フランスの22番街
- 犬は青い
- 猫は白黒です
したがって、最後の 2 つの文字列は true を返す必要があります。
それを見つける最良の方法は何ですか?
正規表現、または substr() で確認しますか?
それが最速の代替手段であるように思われるので、私は常に使用しstrpos
ています(ただし、正規表現については知りません)。
if(strpos($haystack, $needle) !== FALSE) return $haystack;
正規表現では、次のように書くことができます
preg_match_all("/(red|blue|black|white|etc)/", $haystack, $matches);
print_r($matches);
すべての文字列に対してループを使用すると、$matches のどの値が必要かが簡単にわかります。
PHP の strpos または strripos は、文字列内の単一の単語を検索できる必要があります。ただし、使用する場合は、すべての色を検索するためにループする必要がある場合があります