ホームページ >バックエンド開発 >PHPチュートリアル >PHP を使用して文字列内の単語の出現を効率的に見つけるにはどうすればよいでしょうか?

PHP を使用して文字列内の単語の出現を効率的に見つけるにはどうすればよいでしょうか?

Barbara Streisand
Barbara Streisandオリジナル
2024-10-27 17:53:02745ブラウズ

How to efficiently find word occurrences in a string using PHP?

PHP を使用した文字列内の単語の出現の検索

質問:

どうやって判断できますか指定された文字列内に特定の単語が存在する場合?

回答:

PHP には、単語の出現をチェックするためのメソッドがいくつか用意されています:

strpos () およびstripos() 関数:

これらの関数は、別の文字列内で最初に出現する文字列を検索します。見つかった場合は、一致した文字インデックスを返します。そうでない場合は false を返します。存在するかどうかを確認するには、戻り値を false と比較します。

<code class="php">$needle = 'to';
$haystack = 'I go to school';

if (strpos($haystack, $needle) !== false) {
    echo 'Found!';
}</code>

strstr() および stristr() 関数:

これらの関数は干し草の山の一部を返します。最初に針が発生した後。針が見つからない場合は false を返します。存在を確認するには、戻り値が false でないかどうかを確認します。

<code class="php">if (strstr($haystack, $needle)) {
    echo 'Found!';
}</code>

preg_match() 関数:

Preg_match は正規表現を使用して一致を検索します。一致した場合は 1、一致しなかった場合は 0、エラーの場合は false を返します。存在するかどうかを確認するには、戻り値を 1:

<code class="php">if (preg_match('/to/', $haystack)) {
    echo 'Found!';
}</code>

str_contains() 関数 (PHP 8.0 ):

PHP 8.0 で導入され、この関数は直接比較します。ある文字列に別の文字列が含まれているかどうかを確認します。針が見つかった場合は true を返し、それ以外の場合は false を返します。

<code class="php">if (str_contains($haystack, $needle)) {
    echo 'Found!';
}</code>

単純さと直接性のために、この目的には strpos() が適しています。結果に対して追加の操作を実行する必要がある場合は、strstr() または preg_match() の方が適切な場合があります。正確なパターン マッチングを実現するには、preg_match() を使用すると柔軟性が高まります。

以上がPHP を使用して文字列内の単語の出現を効率的に見つけるにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。