javascript - significado - lista de kanjis japoneses
Uso de JavaScript para verificar si una cadena contiene caracteres japoneses(incluido el kanji) (2)
Compruebe si esto funciona o no. Encontré este sitio web que parece enumerar todos los caracteres en Unicode que podrían usarse en texto japonés.
La expresión regular correspondiente (para un solo carácter) sería:
/[/u3000-/u303f/u3040-/u309f/u30a0-/u30ff/uff00-/uff9f/u4e00-/u9faf/u3400-/u4dbf]/
-------------_____________-------------_____________-------------_____________
Punctuation Hiragana Katakana Full-width CJK CJK Ext. A
Roman/ (Common & (Rare)
Half-width Uncommon)
Katakana
Los rangos son (como se cita en el sitio):
-
3000 - 303f
: puntuación de estilo japonés -
3040 - 309f
: Hiragana -
30a0 - 30ff
: Katakana -
ff00 - ff9f
: caracteres romanos de ancho completo y Katakana de ancho medio -
4e00 - 9faf
: ideogramas unificados CJK - Kanji común e infrecuente -
3400 - 4dbf
: ideogramas unificados CJK, extensión A - Kanji raro
He cambiado un poco los rangos:
- He cambiado de
ff00 - ffef
aff00 - ff9f
para caracteres romanos de ancho completo y Katakana de ancho medio . Los puntos de código deffa0 - ffdc
contienen caracteres de medio ancho de Hangul, que no es lo que quieres. Es posible que desee volver a agregar los puntos de código deffe0 - ffef
, pero en su mayoría son puntuaciones de ancho medio o símbolos de moneda de ancho completo.
Puede revisar el sitio y eliminar cualquier rango que no desee, o está seguro de que no aparecerá en su entrada.
¿Cómo puedo verificar si una cadena dada contiene uno o más caracteres japoneses (que consisten en kana y / o kanji)?
Vi una pregunta similar aquí: ¿Cómo puedo verificar si la variable contiene caracteres chinos / japoneses? , y utilicé la solución para llegar a esto:
var containsJapanese = string.match(/[/u3400-/u9FBF]/);
Sin embargo, esto da muchos falsos positivos.
Lo he probado con una secuencia de comandos que recorre el contenido de todas las páginas web, como Facebook, desbordamiento de pila, etc. y marcando los divs que supuestamente contienen texto en japonés. En esos casos, una gran cantidad de divs terminan siendo marcados por error. También lo he probado en páginas que contienen texto en japonés, y los divs japoneses allí terminan siendo marcados correctamente junto con muchos divs marcados incorrectamente.
Utilice la función charCode para detectar el idioma japonés. Por ejemplo, (del sitio web http://www.jpf.go.jp/j/index.html )
var a=$(''a[href$="culture/new/index.html"]'').text();
a=a+''K'';
for(i=0;i<3;i++){ //3 as i knew it was length 3. Please use string.length
console.log(a.charCodeAt(i));
//Detect the charCode here and use break on match
}
Output : 19968 35239 75