Fügen Sie Whitespace zwischen chinesischen und anderen Buchstaben hinzu

Ich möchte ein Leerzeichen zwischen einem chinesischen Zeichen und einem Buchstaben oder einer Zahl hinzufügen, um den Artikel lesbarer zu machen.

Beispielsweise:

Google 与 Apple 展开 专利 专利 大战 2 天 之前 结束.

Google 与 Apple 展开 专利 专利 大战 2 天 之前 结束.

Aber den Platz manuell hinzufügen ist eine harte Arbeit. Wie kann ich das automatisch machen? Vielleicht mit CSS?

Solutions Collecting From Web of "Fügen Sie Whitespace zwischen chinesischen und anderen Buchstaben hinzu"

Interessante Frage. Dies könnte ein nützlicher Teil einer bestimmten Sprachdatei sein . Dies ist in CSS nicht möglich, da CSS (meistens) agnostisch ist. Aber mit einem Filter und PHP ist es möglich und zum Thema:

add_filter( 'the_content', 't5_chinese_spacing' ); function t5_chinese_spacing( $content ) { return preg_replace( '~([^\p{Han}]*)(\p{Han}+)([^\p{Han}])~imUxu', '\1 \2 \3', $content ); } 

Beachten Sie, dass Ihre interne Kodierung UTF-8 sein muss, damit dies funktioniert. Während WordPress auch mit anderen Kodierungen arbeitet, benötigt PHP dafür UTF-8 . Lesen Sie WordPress Database Charset und Collation Configuration , um sicherzustellen, dass alles richtig eingerichtet ist.

Beachten Sie auch, dass ich die Zeichenklasse von PHP für die Han-Vereinigung hier verwende. Dies ist nicht perfekt, einige Interpunktionszeichen, die chinesische Autoren verwenden könnten, sind nicht enthalten.