配列を右から左に分解する方法: PHP の最後の区切り文字で分割する

Susan Sarandon
リリース: 2024-10-21 15:24:30
オリジナル
153 人が閲覧しました

How to Explode Arrays from Right to Left: Splitting on the Last Delimiter in PHP

右から左への配列の分解: 最後の区切り文字の分割

PHP では、explode() 関数は、以下に基づいて文字列を分割するためによく使用されます。指定された区切り文字。ただし、特定の区切り文字が最後に出現した位置でのみ文字列を分割する必要がある場合は、あいまいさが生じる可能性があります。

たとえば、次のシナリオを考えてみましょう。

<code class="php">$split_point = ' - ';
$string = 'this is my - string - and more';</code>
ログイン後にコピー

この文字列に直接explode()を使用すると、次の結果が得られます:

<code class="php">$item[0] = 'this is my';
$item[1] = 'string - and more';</code>
ログイン後にコピー

ただし、区切り文字の2番目のインスタンスでのみ分割したいため、これは望ましい出力ではありません。これを実現するには、strrev() 関数を使用して少し異なるアプローチを採用できます。

<code class="php">$split_point = ' - ';
$string = 'this is my - string - and more';

$result = array_map('strrev', explode($split_point, strrev($string)));</code>
ログイン後にコピー

これがどのように機能するかは次のとおりです。

  1. まず、strrev() を使用して文字列全体を反転します。 ).
  2. 次に、反転した文字列に対してexplode() 操作を実行し、文字列を右から左に効果的に分割します。
  3. 最後に、結果の文字列の各要素に strrev() を再度適用します。

このアプローチでは、次の出力が得られます。

<code class="php">array (
  0 => 'and more',
  1 => 'string',
  2 => 'this is my',
)</code>
ログイン後にコピー

文字列を反転して分割することで、基本的に検索を左から左への検索に変換します。文字列の末尾からの -right 操作により、区切り文字の最後のインスタンスをキャプチャできるようになります。

以上が配列を右から左に分解する方法: PHP の最後の区切り文字で分割するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!