ホームページ >バックエンド開発 >PHPチュートリアル >PHP で改行スタイルを効果的に置き換える方法は?

PHP で改行スタイルを効果的に置き換える方法は?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-19 02:15:02219ブラウズ

How to Effectively Replace Newline Styles in PHP?

PHP で改行スタイルを置換する方法

PHP では、さまざまな改行スタイルを扱うのが難しい場合があります。すべての改行 ('rn'、'n'、'r') を 'rn' に置き換えるには、次のメソッドを使用できます:

preg_replace() with R

このメソッドは正規表現を利用して、すべての Unicode 改行シーケンス (OS に関係なく) に一致します:

$string = preg_replace('~\R~u', "\r\n", $string);

CRLF 改行のみに一致させたい場合:

$string = preg_replace('~(*BSR_ANYCRLF)\R~', "\r\n", $string);

注:

  • R は、任意の Unicode 改行シーケンスを表します。
  • BSR_ANYCRLF は、R が CR、LF、または CRLF のみに一致するように制限します。
  • u は、入力文字列は UTF-8 として扱われる必要があります。

R の PCRE オプション

PCRE は、R の動作をカスタマイズするオプションを提供します。

  • PCRE_BSR_ANYCRLF: R が CR、LF、または CRLF のみに一致するように制限します。
  • PCRE_BSR_UNICODE: R が任意の Unicode 改行シーケンスと一致できるようにします。

特別なパターン シーケンス

または、パターン自体で R マッチング動作を指定できます:

  • (*BSR_ANYCRLF): Match CR, LF 、または CRLF のみ。
  • (*BSR_UNICODE): 任意の Unicode 改行シーケンスと一致します。

例:

$pattern = '(*BSR_ANYCRLF)\R';
preg_replace($pattern, "\r\n", $string);

これらの特別なシーケンスは、パターンの先頭を大文字にし、pcre_compile() で設定したオプションをオーバーライドできます。

以上がPHP で改行スタイルを効果的に置き換える方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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