ホームページ > バックエンド開発 > PHPチュートリアル > PHP で引用符で囲まれた単語を保持したまま文字列を分割するにはどうすればよいですか?

PHP で引用符で囲まれた単語を保持したまま文字列を分割するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-05 09:43:10
オリジナル
560 人が閲覧しました

How Can I Split a String in PHP While Preserving Quoted Words?

PHP で文字列を分割するときに引用符内の単語を保持する

文字列を配列に分割する必要がある場合、文字列には引用符で囲まれた単語が含まれており、そのままにしておく必要があります。この場合、次の文字列を展開します:

Lorem ipsum "dolor sit amet" consectetur "adipiscing elit" dolor
ログイン後にコピー

この配列:

array("Lorem", "ipsum", "dolor sit amet", "consectetur", "adipiscing elit", "dolor")
ログイン後にコピー

引用符内のテキストを分割するのではなく、preg_match_all( ...) これを実現する関数:

$text = 'Lorem ipsum "dolor sit amet" consectetur "adipiscing \"elit" dolor';
preg_match_all('/"(?:\\.|[^\\"])*"|\S+/', $text, $matches);
ログイン後にコピー

この正規表現は次のように機能します。

  • 二重引用符で囲まれた一連の文字と一致します (エスケープされた引用符も処理されます)。
  • または、任意の非空白文字と 1 回以上一致します。

結果の $matches 配列には、目的の分割が含まれますWords:

Array
(
    [0] => Array
        (
            [0] => Lorem
            [1] => ipsum
            [2] => "dolor sit amet"
            [3] => consectetur
            [4] => "adipiscing \"elit"
            [5] => dolor
        )

)
ログイン後にコピー

このアプローチを利用すると、引用符で囲まれた単語の整合性を維持しながら、文字列を効果的に分解できます。

以上がPHP で引用符で囲まれた単語を保持したまま文字列を分割するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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