strpos を使用して文字列の 2 番目 (または n 番目) の出現を見つけるにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-10-18 14:49:03
オリジナル
343 人が閲覧しました

How to Find the Second (or nth) Occurrence of a String with strpos?

strpos を使用して文字列の 2 番目の出現を見つける

strpos() 関数は、部分文字列の最初の出現を見つけるための便利なツールです文字列内で。ただし、2 番目以降の出現を取得する必要がある場合、標準の strpos() 構文では不十分です。独創的な回避策は次のとおりです。

このタスクを達成するには、カスタム関数 strposX() を実装できます。これには、干し草の山 (出現箇所を検索する文字列)、針 (検索する部分文字列)、および検索したい出現箇所の番号が必要です。

strposX() 関数は、再帰的アプローチ。必要な出現数が 1 の場合、単純に strpos() を呼び出して最初の出現を見つけます。後続の出現 (1 より大きい数値) の場合、それ自体を再帰的に呼び出して前の出現 (n 番目-1) を検索し、その位置に針の長さを追加して、n 番目の出現の検索の開始点を移動します。

strposX() 関数の使用方法の例を次に示します。

$haystack = "PHP Programming is Fun";
$needle = "Programming";
$nthOccurrence = 2;

$occurrence = strposX($haystack, $needle, $nthOccurrence);

echo "The $nthOccurrence occurrence of '$needle' is at position $occurrence";
ログイン後にコピー

このコードは次のように出力します。「'Programming' の 2 番目の出現は位置 8 です。」

このカスタム strposX() 関数を適用すると、文字列内の任意の部分文字列の n 番目の出現を簡単に取得でき、コードの汎用性と効率性が高まります。

以上がstrpos を使用して文字列の 2 番目 (または n 番目) の出現を見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート