Bevor Sie erklären, wie chinesische Charaktere entfernt werden, verstehen Sie zunächst die Definition chinesischer Zeichenfolgen. Eine chinesische Saite ist eine Saite, die aus chinesischen Zeichen besteht. Jeder chinesische Charakter nimmt normalerweise zwei Bytes auf und ist in Unicode codiert, was besondere Aufmerksamkeit auf Zeichen für Charaktercodierung beim Umgang mit Saiten erfordert.
Regelmäßige Ausdrücke können chinesische Zeichen in Saiten übereinstimmen und löschen. Hier ist ein Beispielcode, der zeigt, wie Chinese mit regulären Ausdrücken entfernen kann:
$str = "Hello, Hallo!";
$str = preg_replace('/[\x{4e00}-\x{9fa5}]/u', '', $str);
echo $str; // Ausgabe: Hello, !
Analyse: Der reguläre Ausdruck hier entspricht allen chinesischen Zeichen, und die UTF-8-Codierungsunterstützung wird mit dem U- Parameter U aktiviert. Die Funktion preg_replace ist dafür verantwortlich, die übereinstimmenden Chinesen durch eine leere Zeichenfolge zu ersetzen, um die Entfernungsfunktion zu erreichen.
MB_SUBSTR ist eine Multi-Byte-String-Intercept-Funktion. Obwohl es Chinesen nicht direkt entfernen kann, kann es auch den Entfernungseffekt durch spezifische Abfangen -Techniken erreichen. Beispiele sind wie folgt:
$str = "Hello, Hallo!";
$str = mb_substr($str, 0, 0, 'UTF-8') . mb_substr($str, 0, 0, 'UTF-8');
echo $str; // Ausgabe: Hello, !
Analyse: Diese Methode fängt die Länge der Zeichenfolge auf 0 ab und gibt eine leere Zeichenfolge zurück. Obwohl der Codeeffekt im Beispiel begrenzt ist, werden regelmäßige Expressionsmethoden in der tatsächlichen Entwicklung eher empfohlen.
Die Funktion preg_replace_callback ermöglicht eine benutzerdefinierte Verarbeitung von passenden Zeichenfolgen und kann zum Entfernen chinesischer Zeichen verwendet werden. Das Beispiel lautet wie folgt:
$str = "Hello, Hallo!";
$str = preg_replace_callback('/[\x{4e00}-\x{9fa5}]/u', function($matches) {
return "";
}, $str);
echo $str; // Ausgabe: Hello, !
Analyse: Diese Funktion verwendet einen Rückrufmechanismus, um die passenden chinesischen Zeichen durch eine leere Zeichenfolge zu ersetzen, um den Effekt der Entfernung von Chinesen zu erreichen.
In diesem Artikel werden drei Methoden eingeführt, um chinesische Zeichen in Saiten in PHP zu entfernen, nämlich PREG_REPLACE basierend auf regelmäßigen Ausdrücken, Abschluss mit MB_SUBSTR und PREG_REPLACE_CALLBACK CALLBACK -Verarbeitung. In praktischen Anwendungen sind regelmäßige Expressionsmethoden prägnanter und effizienter, daher wird empfohlen, sie zuerst zu verwenden. Beim Betrieb müssen Sie auf das Codierungsformat der Zeichenfolge achten, um sicherzustellen, dass die UTF-8-Codierung verwendet wird, um verstümmelte Code zu vermeiden.