Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich nicht druckbare Zeichen aus einer Zeichenfolge in PHP entfernen?

Wie kann ich nicht druckbare Zeichen aus einer Zeichenfolge in PHP entfernen?

Patricia Arquette
Freigeben: 2024-12-10 17:07:10
Original
749 Leute haben es durchsucht

How Can I Remove Non-Printable Characters from a String in PHP?

Entfernen nicht druckbarer Zeichen aus einer Zeichenfolge

In einigen Fällen kann es erforderlich sein, nicht druckbare Zeichen aus einer Zeichenfolge zu entfernen Zeichenfolgen, beispielsweise solche in den Bereichen 0–31 und 127 während der Zeichenfolgenmanipulation oder von Daten Bereinigung.

7-Bit-ASCII

Um nicht druckbare Zeichen im 7-Bit-ASCII-Bereich (0-31, 127-255) zu entfernen, verwenden Sie den folgenden regulären Ausdruck mit preg_replace:

$string = preg_replace('/[x00-x1Fx7F-xFF]/', '', $string);

Dadurch werden effektiv alle Zeichen innerhalb der angegebenen Bereiche entfernt.

Um 8-bit erweitertes ASCII zu verarbeiten und Zeichen zu eliminieren Verwenden Sie nur im Bereich 0-31 und 127 den angepassten regulären Ausdruck:

$string = preg_replace('/[x00-x1Fx7F]/', '', $string);

UTF-8

Für UTF-8 kodiert Zeichenfolgen wird empfohlen, den Modifikator /u in den regulären Ausdruck einzubinden:

$string = preg_replace('/[x00-x1Fx7F]/u', '', $string);

Dies stellt die genaue Entfernung bestimmter Steuerzeichen wie NO-BREAK SPACE (U 00A0) sicher, indem xA0 zum Zeichen hinzugefügt wird Klasse.

Nachtrag: str_replace Alternative

Während preg_replace effizient ist, sollten Sie str_replace als Alternative in Betracht ziehen, insbesondere für wiederholte Vorgänge.

// Erstellen Sie ein Array nicht druckbarer Zeichen
$badchars = array(

chr(0), chr(1), chr(2), ..., chr(31),
chr(127)
Nach dem Login kopieren

);

// Ersetzen Sie unerwünschte Zeichen mit str_replace
$str2 = str_replace($badchars, '', $str);

Es ist wichtig, die Leistung beider Ansätze anhand Ihrer eigenen Daten zu vergleichen, um die optimale Lösung für Ihren spezifischen Fall zu ermitteln.

Das obige ist der detaillierte Inhalt vonWie kann ich nicht druckbare Zeichen aus einer Zeichenfolge in PHP entfernen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage