Búsqueda de sitios web

javascript detectar si el carácter de entrada es chino tradicional o chino simplificado


Soy nuevo en el desarrollo web y ahora estoy desarrollando un sitio web de uso interno con js para usuarios de diferentes idiomas. Funciona muy bien para detectar la entrada de caracteres en inglés y en chino. Y quiero ir más allá para detectar chino tradicional y chino simplificado. ¿Alguna idea de cómo hacer esta tarea?

a continuación está mi código para detectar chino e inglés

  if (string.match(/^[A-Za-z]*$/)) {
   //....English
  } else if (string.match(/[\u3400-\u9FBF]/)) {
   //....Chinese
  } else {

  }

Respuesta #1

He creado una biblioteca traditional-or-simplified para detectar si una cadena contiene una mayoría de caracteres chinos tradicionales o simplificados comparando el número de caracteres simplificados/tradicionales que aparecen en una cadena de entrada.

var TradOrSimp = require('traditional-or-simplified');

// Detect if a string contains Simplified Chinese 
TradOrSimp.isSimplified('无需注册或设置')
// True 

// Detect if a string contains Traditional Chinese 
TradOrSimp.isTraditional('無需帳戶或註冊。')
// True 

// Detect if a string contains Traditional or Simplified Chinese characters 
TradOrSimp.detect('無需帳戶或註冊。')

/* 
{ inputLength: 8, // Length of input string 
  simplifiedCharacters: 0, // Count of Simplified Chinese characters 
  traditionalCharacters: 4, // Count of Traditional Chinese characters 
  detectedCharacters: 'traditional', // Detected character set 
  detectionRate: 1 } // Ratio of majority/minority character sets */