PHPでは、 StrStrとStrlenは一般的に使用され、文字列処理機能が使用されます。これは、文字列の一致する部分を見つけて文字列の長さをそれぞれ計算するために使用されます。これら2つの関数を合理的に組み合わせることにより、一致する文字列の長さを簡単に取得できます。この記事では、これら2つの関数を使用して一致する文字列の長さを取得する方法について詳しく説明します。
STRRIST関数は、文字列が最初に別の文字列に表示され、その位置から文字列の端まで始まる部分を返す位置を見つけるために使用されます。関数はケースに敏感であり、返された一致部分には元の文字列の一致コンテンツが含まれています。基本的な構文は次のとおりです。
<span><span><span class="hljs-title function_ invoke__">stristr</span></span><span>(</span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$haystack</span></span><span>, </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$needle</span></span><span>, </span><span><span class="hljs-keyword">bool</span></span><span> </span><span><span class="hljs-variable">$before_needle</span></span><span> = </span><span><span class="hljs-literal">false</span></span><span>): </span><span><span class="hljs-keyword">string</span></span><span>|</span><span><span class="hljs-literal">false</span></span><span>
</span></span>$ haystack :検索するターゲット文字列。
$針:見つかるサブストリング。
$ before_needle : trueに設定した場合、一致するサブストリングの前に文字列を最初から位置に戻します。
Strristは一致するサブストリングを返し、見つからない場合はFalseを返します。
strlen関数は、文字列の長さを計算するために使用されます。文字列内の文字の数を返し、エンコーディングタイプの文字を無視します。基本的な構文は次のとおりです。
<span><span><span class="hljs-title function_ invoke__">strlen</span></span><span>(</span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$string</span></span><span>): </span><span><span class="hljs-keyword">int</span></span><span>
</span></span>$文字列:長さで計算する文字列。
サブストリングを見つけて、その一致する部分の長さを取得する必要がある場合、 StrristrとStrlenを組み合わせて使用できます。特定の手順は次のとおりです。
STRSTRを使用して、ターゲット文字列の最初の一致したサブストリングの位置を見つけます。
strlenを使用して、一致する文字列の長さを計算します。
文字列$ haystackがあるとします。サブストリング$針を調べて、その一致する部分の長さを計算したいとします。コードは次のとおりです。
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$haystack</span></span><span> = </span><span><span class="hljs-string">"PHP is a popular general-purpose scripting language."</span></span><span>;
</span><span><span class="hljs-variable">$needle</span></span><span> = </span><span><span class="hljs-string">"popular"</span></span><span>;
</span><span><span class="hljs-comment">// 使用 stristr 一致するサブストリングを見つけます</span></span><span>
</span><span><span class="hljs-variable">$match</span></span><span> = </span><span><span class="hljs-title function_ invoke__">stristr</span></span><span>(</span><span><span class="hljs-variable">$haystack</span></span><span>, </span><span><span class="hljs-variable">$needle</span></span><span>);
</span><span><span class="hljs-comment">// 一致する部分が見つかった場合</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$match</span></span><span> !== </span><span><span class="hljs-literal">false</span></span><span>) {
</span><span><span class="hljs-comment">// 使用 strlen 一致する部分の長さを計算します</span></span><span>
</span><span><span class="hljs-variable">$length</span></span><span> = </span><span><span class="hljs-title function_ invoke__">strlen</span></span><span>(</span><span><span class="hljs-variable">$match</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"一致する文字列の長さはです: "</span></span><span> . </span><span><span class="hljs-variable">$length</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"一致するサブストリングは見つかりませんでした。"</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>最初に、ターゲット文字列とそれぞれ見つけるサブストリングを表す2つの変数$ haystackと$針を定義します。
STRSTRを使用して、 $ HayStackで$針が初めて表示される場所を見つけ、一致する部分を$ MATCE変数に保存します。一致する部分が見つかった場合、 STRSTRは一致位置から文字列の端まで部分を返します。
一致する部分が見つかった場合、 strlenを使用して、その一致する部分の長さを計算します。
最後に、出力は文字列の長さと一致します。
$ haystackが「PHPが一般的な汎用スクリプト言語である」と仮定します。また、 $針は「人気があり」、上記のコードを実行すると出力されます。
<span><span><span class="hljs-section">一致する文字列の長さはです: 8</span></span><span>
</span></span>これは、「人気」が一致するサブストリングであり、その長さは8であるためです。
Strristによって返される一致する部分には、一致するサブストリングと続くすべてが含まれているため、一致するサブストリング自体の長さのみを気にする場合は、 Strlenを使用します。
サブストリングに一致する前に検索を停止したい場合は、 Strristrの3番目のパラメーター$ before_needleを使用してtrueに設定できます。返された文字列には、サブストリングの前にパーツのみが含まれます。
StrristrとStrlenを組み合わせることで、一致する文字列を簡単に見つけて、それらの長さを計算できます。これは、特に文字列処理やデータ抽出などのタスクでは、多くのシナリオで非常に役立ちます。この記事の例が、これらの2つの機能を使用する方法をよりよく理解するのに役立つことを願っています。