PHPの文字列内に全単語が存在するかどうかを確認するにはどうすればよいですか?PHP単語全体が文字列内にある場合
if (preg_match($needle, $haystack))
別の方法:
if (strpos($haystack, $needle) !== false)
これらのメソッドの両方がある程度機能しますが、$haystack
だけ含まれている場合、これらの方法はまた、trueを返します私はStackOverflowの上ここではいくつかのanswereを見つけました問題となっている$needle
の部分..
私は$haystack
は単語「PartialWord」が含ましかし、私は$needle
に等しい「部分」
$needle = "Partial";
$haystack = "PartialWord-random)exampletextfoo-blabla";
if (preg_match($needle, $haystack))
それは$needle
は「PartialWord」と同じでなければなりませんtrueを返すようにするために$needle
が&「の一部」であるので、それはfalseを返すべきであるにもかかわらず、trueを返します。
提案がありますか?
しかし、あなたのすばらしい*には「部分的」が含まれています(単語区切りを構成するもの、句読点や空白など)、次に針、そして次に、句読点、空白などのように)代わりに? (その場合は 'preg_match'を再度見て検索式を変更してください) –
ここでは単語の定義を本当に緩めました。 – apokryfos