ホームページ  >  記事  >  バックエンド開発  >  PHP で文字列や配列内の要素を見つけるにはどうすればよいですか?

PHP で文字列や配列内の要素を見つけるにはどうすればよいですか?

WBOY
WBOYオリジナル
2021-11-04 16:37:061640ブラウズ

前回の記事「PHP文字列置換をすぐにマスターする(具体例)」では、PHPにおけるキャラクタベッド置換の関連知識を詳しく紹介しましたので、今回はこちらの記事を見てみましょう。これが、PHP での文字列の配置に関する関連知識を持つすべての人に役立つことを願っています。

PHP で文字列や配列内の要素を見つけるにはどうすればよいですか?

前回の記事では、PHP で文字列内の文字を置換する場合は、次の関数が提供する substr_replace 関数を使用する必要があることを学びました。 PHP str_replace 関数を使用すると、PHP の置換の問題を解決できます。同様に、文字列の位置決めも PHP 開発プロセスでは非常に一般的です。

PHP では、ある文字列が別の文字列内に出現するかどうかを検索する場合、PHP の strstr 関数を使用できます。次に、文字列を検索して見つける方法を見てみましょう。文字列。

<strong>#strstr<span style="font-size: 20px;"></span></strong>関数 - 文字列要素の検索

PHP では、

strstr 関数を使用して、別の文字列内で最初に出現する文字列を検索できます。strstr 関数の基本的な構文形式は次のとおりです:

strstr(string,search,before_search)

パラメータ

string は検索対象の文字列を表し、パラメータ search は検索対象の文字列を表すことに注意してください。このパラメータは整数に変換され、文字のシーケンス番号として使用されます。デフォルトのパラメータ before_search は false です。true に設定すると、返される結果はパラメータの検索番号です. 出現前の文字列の部分。

この関数の戻り値は一致点からの残りの文字列であり、検索対象の文字列が見つからない場合は false が返されます。


次に、strstr 関数の使用例を見てみましょう。例は次のとおりです:

<?php
$email  = &#39;123456789123456789@gamil.com&#39;;
echo $email. &#39;<br/>&#39;;//正常输出
$domain = strstr($email, &#39;@&#39;);//通过strstr函数来搜索@出现的第一次位置
echo $domain;
?>

出力結果:


PHP で文字列や配列内の要素を見つけるにはどうすればよいですか?

上記の例では、strstr 関数によって返される結果は、検索した文字列の後の残りの部分です。 strstr 関数を通じて文字列を検索するという目的を達成します。

位置合わせのことになると、PHP の正規表現について言及する必要があります。上記では、

strstr 関数を通じて位置指定文字列を完成させました。PHP には別の関数があります。 preg_grep() 関数の使用法を見てみましょう。

<strong>preg_grep<span style="font-size: 20px;"></span></strong>() 関数の配置配列要素

PHP での検索位置設定に関しては、正規表現が避けられません。PHP には、正規表現を使用して配列要素を照合するための

preg_grep() が用意されています。

preg_grep() 関数の基本的な構文形式は次のとおりです。

array preg_grep ( string $pattern , array $input [, int $flags = 0 ] )

パラメーター

pattern は、正規表現、つまり検索対象のパターン。パラメータ input は検索対象の配列を表し、パラメータ flags は通常、PREG_GREP_INVERT に設定されます。この時点の関数 返される結果は、一致しない $pattern 要素の配列です。

次に、例を通して

preg_grep() 関数の使用法を見てみましょう。例は次のとおりです:

<?php
$pattern = &#39;/[0-9]/&#39;;
$subject = array(&#39;weuy&#39;,&#39;r3ui&#39;,&#39;76as83&#39;,&#39;s&#39;,&#39;0ck9&#39;);
$arr = preg_grep($pattern,$subject);
show($arr);
function show($var){
    if(empty($var)){
        echo &#39;null&#39;;
    }elseif(is_array($var)||is_object($var)){
        echo &#39;
&#39;;
        print_r($var);
        echo &#39;
&#39;;
    }else{
        echo $var;
    }
}
echo &#39;<br/>&#39;;
$arr1 = preg_grep($pattern,$subject,PREG_GREP_INVERT);
show($arr1);
function show1($var1){
    if(empty1($var1)){
        echo &#39;null&#39;;
    }elseif(is_array($var1)||is_object($var1)){
        echo &#39;
&#39;;
        print_r($var1);
        echo &#39;
&#39;;
    }else{
        echo $var1;
    }
}
?>

出力結果:


PHP で文字列や配列内の要素を見つけるにはどうすればよいですか?

上記の例では、配列要素を一致させることができますが、パラメーター フラグの値は異なり、preg_grep() 関数によって返される結果も異なります。 。

ご興味がございましたら、「

PHP ビデオ チュートリアル 」をクリックして、PHP の知識をさらにご覧ください。

以上がPHP で文字列や配列内の要素を見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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