Heim >Backend-Entwicklung >PHP-Tutorial >Wie ordne ich \\r und \\n in PHP zu, ohne [\\r\\n] zu verwenden?

Wie ordne ich \\r und \\n in PHP zu, ohne [\\r\\n] zu verwenden?

Linda Hamilton
Linda HamiltonOriginal
2024-11-02 20:10:021074Durchsuche

How to Match \r and \n in PHP Without Using [\r\n]?

Abgleichen von r und n ohne [rn] in PHP

In PHP besteht die Herausforderung darin, r und n abzugleichen, ohne [rn] zu verwenden ] erfordert einen anderen Ansatz.

PCRE und Newlines

PCRE bietet mehrere Escape-Sequenzen für die Behandlung von Newlines, einschließlich R.

  • R mit Standardeinstellungen: Entspricht Unicode-Neuzeilen, kann aber mit Modifikatoren konfiguriert werden.
  • R mit u (Unicode) Modifikator: Entspricht jeder Unicode-Neuzeilensequenz.
  • R mit (*BSR_ANYCRLF) Modifikator:Schränkt R so ein, dass es nur mit CR, LF oder CRLF übereinstimmt.

Beispiel:

<code class="php">$string = "
Test
";

// Match any Unicode newline sequence
if (preg_match('~\R~u', $string)) {
  echo "Matched CR, LF, or any Unicode newline.";
}</code>

< ;h3>Zusätzliche Optionen für Zeilenumbruchkonventionen

PCRE unterstützt fünf Konventionen zur Angabe von Zeilenumbrüchen in Zeichenfolgen:

  • (*CR) – Wagenrücklauf
  • (*LF) – Zeilenvorschub
  • (*CRLF) – Wagenrücklauf, gefolgt von Zeilenvorschub
  • (*ANYCRLF) – Eine der drei oben genannten
  • (*ANY) - Alle Unicode-Neuzeilensequenzen

Die Verwendung von (*ANYCRLF) stellt sicher, dass nur CR, LF oder CRLF abgeglichen wird.

<code class="php">if (preg_match('~(*ANYCRLF)\R~', $string)) {
  echo "Matched CR, LF, or CRLF.";
}</code>

Hinweis

Innerhalb von Zeichenklassen verliert R seine besondere Bedeutung und wird als wörtliches „R“-Zeichen behandelt.

Das obige ist der detaillierte Inhalt vonWie ordne ich \\r und \\n in PHP zu, ohne [\\r\\n] zu verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn