Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich nicht druckbare Zeichen effizient aus Zeichenfolgen in verschiedenen Codierungen entfernen?

Wie kann ich nicht druckbare Zeichen effizient aus Zeichenfolgen in verschiedenen Codierungen entfernen?

Linda Hamilton
Freigeben: 2024-12-28 15:04:10
Original
249 Leute haben es durchsucht

How Can I Efficiently Remove Non-Printable Characters from Strings in Different Encodings?

Nicht druckbare Zeichen in Zeichenfolgen maskieren

Einführung:

Beim Umgang mit Textdaten Oft ist es erforderlich, bestimmte nicht druckbare Zeichen zu entfernen, die bei der Speicherung, Anzeige oder Verarbeitung zu Problemen führen können. Es ist von entscheidender Bedeutung, zu verstehen, wie diese Zeichen effizient entfernt werden können.

Lösung:

Um nicht druckbare Zeichen (0-31 und 127) zu entfernen, ziehen Sie die folgenden Optionen in Betracht die Kodierung Ihrer Zeichenfolge:

1. 7-Bit-ASCII:

$string = preg_replace('/[\x00-\x1F\x7F-\xFF]/', '', $string);
Nach dem Login kopieren

2. 8-Bit erweitertes ASCII:

$string = preg_replace('/[\x00-\x1F\x7F]/', '', $string);
Nach dem Login kopieren

3. UTF-8:

$string = preg_replace('/[\x00-\x1F\x7F]/u', '', $string);
Nach dem Login kopieren

4. Alternative mit str_replace:

$badchar = [...]; // Array of non-printable characters
$string2 = str_replace($badchar, '', $str);
Nach dem Login kopieren

Benchmarking:

Die Leistung von preg_replace im Vergleich zu str_replace variiert je nach Stringlänge und -typ. Um den optimalen Ansatz für Ihren spezifischen Fall zu ermitteln, wird ein Benchmarking anhand Ihrer eigenen Daten empfohlen.

Was ist mit Unicode?

Um bestimmte nicht druckbare Unicode-Zeichen zu entfernen (z. B. NO-BREAK SPACE), verwenden Sie xA0 innerhalb der Zeichenklasse:

$string = preg_replace('/[\x00-\x1F\x7F\xA0]/u', '', $string);
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich nicht druckbare Zeichen effizient aus Zeichenfolgen in verschiedenen Codierungen 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