ホームページ  >  記事  >  バックエンド開発  >  文字列の最後の区切り文字インスタンスで右から左への分割を実行するにはどうすればよいですか?

文字列の最後の区切り文字インスタンスで右から左への分割を実行するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-10-21 15:24:02785ブラウズ

How to Perform a Right-to-Left Split on the Last Delimiter Instance in a String?

最後の区切り文字インスタンスでの展開: 右から左へのアプローチ

指定されたタスクは、特定の区切り文字で文字列を分割することですただし、その区切り文字が最後に出現した場合のみ考慮してください。 explore() のような通常の文字列分割関数は左から右に動作しますが、目的の結果を達成する独自の方法があります。

次の例を考えてみましょう:

$split_point = ' - ';
$string = 'this is my - string - and more';

目的は分割です。 「-」区切り文字の最後のインスタンスの文字列。

$item[0] = 'this is my - string';
$item[1] = 'and more';

のような配列になります。explode() を左から右に使用する代わりに、文字列を反転して結果の配列を反転することができます。

$result = array_map('strrev', explode($split_point, strrev($string)));

このアプローチには以下が含まれます:

  1. 文字列 ($string) を反転して右から左への分割を実行します。
  2. 文字列を反転して区切り文字で分割します。
  3. 結果の配列に strrev() をマッピングして、各要素を反転します。

関数 array_map() を使用して、strrev() を適用します。配列内の各要素。実際の出力は次のようになります:

array (
  0 => 'and more',
  1 => 'string',
  2 => 'this is my',
)

この手法は最も効率的な解決策ではないかもしれませんが、文字列を反転して結果を反転することで、最後の区切り文字インスタンスで爆発するという目標を効果的に達成できます。

以上が文字列の最後の区切り文字インスタンスで右から左への分割を実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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