Ich muss eine Reihe von gemischten asiatischen Zeichen nehmen (vorerst nur chinesische Kanji oder japanische Kanji/Hiragana/Katakana annehmen) und "Alphanumeric" (dh , Enlgish, Französisch), und zählen Sie es auf folgende Weise:mit Javascript, wie kann ich eine Mischung aus asiatischen Zeichen und englischen Wörtern zählen
1) zählen Sie jeden asiatischen CHARACTER als 1; 2) zähle jedes alphanumerische Wort als 1;
einige Beispiele:
株式会社 myCompany = 4 Zeichen + 1 Wort = 5 Gesamt 株式会社 マ イ コ = 7 Zeichen
meine einzige Idee ist, so weit zu verwenden:
var wordArray=val.split(/\w+/);
und dann überprüfen Sie jedes Element, um zu sehen, ob sein Inhalt alphanumerisch ist (also zählen Sie wie 1) oder nicht (nehmen Sie also die Array-Länge). Aber ich glaube nicht, dass das wirklich sehr schlau ist und der Text, der gezählt wird, könnte bis zu 10.000 Wörter umfassen, also nicht sehr schnell.
Ideen?
Sie können ein asiatisches Zeichen nicht von anderen Multibyte-Zeichen unterscheiden. – shinkou
Sicher kannst du. Sie haben schließlich unterschiedliche Werte. – Annabelle
Danke, alle zusammen. Wir haben uns tatsächlich festgelegt: var charArray = val.match (/ \ w + | [^., \ Uff10- \ uFF19, \ uFF9E, \ uFF9F]/g); Warnung (charArray.length); Wir waren nicht interessiert an der Zählung von asiatischen Wörtern, wir benötigten Anzahl der Zeichen plus Anzahl der alphanumerischen Wörter. Wir müssen ein paar Exclude-Codes hinzufügen, denke ich, aber das ist ein guter Anfang. – user224513