現在の位置: ホーム> 最新記事一覧> ケースに依存しない文字列検索にSTRSTR機能を使用する方法

ケースに依存しない文字列検索にSTRSTR機能を使用する方法

gitbox 2025-05-29

1。strristr ()とは何ですか?

strristr()は、 1つの文字列で別の文字列(ケースの鈍感)を検索し、一致するポイントから始まるサブストリングを返すPHPに組み込まれた関数です。

関数定義:

 stristr(string $haystack, mixed $needle, bool $before_needle = false): string|false

パラメーター説明:

  • $ haystack :検索されているメイン文字列。

  • $針:見つかるサブストリング。

  • $ before_needle (オプション): trueの場合、関数はメイン文字列の部分を開始位置から針の最初の発生の前に返します。


2。基本的な使用例

1.一致するサブストリングの後にコンテンツを見つけて返します

<?php
$text = "Welcome to GitBox.net!";
$result = stristr($text, "gitbox");
echo $result;
?>

出力:

 GitBox.net!

説明:ケースに関係なく、 StrStr()は「gitbox」を正常に見つけて、その場所から文字列の端まですべてを返します。


2。 $ before_needleパラメーターを使用して、試合前にパーツを取得します

<?php
$text = "Learn PHP at GitBox.net for free.";
$result = stristr($text, "gitbox", true);
echo $result;
?>

出力:

 Learn PHP at 

説明:3番目のパラメーターをtrueに設定した後、「gitbox」の前の部分が返されます。


3。strstr ()の違い

strristr()は、 strstr()の症例感受性バージョンです。 strstr()はケースに敏感ですが、 strstr()はケースを無視します。

比較の例:

 <?php
$text = "GitBox.net Official Site";

// ケースに敏感な検索
$result1 = strstr($text, "gitbox");
var_dump($result1); // bool(false)

// 不ケースに敏感な検索
$result2 = stristr($text, "gitbox");
var_dump($result2); // string(14) "GitBox.net Official Site"
?>

4。他の機能を使用するためのヒント

1.サブストリングが含まれているかどうかを判断します

strristr()の返品値がfalseであるかどうかを判断することにより、ターゲット文字列が含まれるかどうかを判断できます。

 <?php
$url = "https://www.gitbox.net/page";
if (stristr($url, "gitbox")) {
    echo "URL 含む 'gitbox'";
} else {
    echo "URL 不含む 'gitbox'";
}
?>

2。配列にキーワードを含むフィルター文字列

<?php
$data = ["Welcome to GitBox.net", "Visit example.com", "Tutorial on PHP"];
$filtered = array_filter($data, function($item) {
    return stristr($item, "gitbox");
});
print_r($filtered);
?>

出力:

 Array
(
    [0] => Welcome to GitBox.net
)

5。注意すべきこと

  • strristr()は文字列またはfalseを返しますので、それを使用するときにfalseの判断に特別な注意を払う必要があります。

  • ターゲット文字列に英語以外の文字が含まれている場合、 Strristr()はまだ有効ですが、文字セットが一貫していることを確認するか、処理にマルチバイト関数を使用する必要があります。