Compartir a través de


Idiomas admitidos por Windows Search

En este tema se describe cómo Windows Search admite varios idiomas.

Tokenización, separadores de palabras y recursos de lenguaje

Windows Search es independiente del idioma, pero la precisión de la búsqueda entre idiomas puede variar debido a la forma en que los separadores de palabras tokenizan el texto. Los separadores de palabras implementan varias reglas de tokenización para los idiomas y dividen el texto en tokens individuales, o palabras, que se van a indexar o buscar.

Tanto el idioma del texto indizado como la cadena de consulta se dividen en tokens. Dado que las reglas de tokenización varían según el idioma, hay separados separados para cada idioma o familia de idiomas. Si hay un error de coincidencia entre el lenguaje de consulta y el lenguaje indizado, los resultados pueden ser impredecibles.

Windows Search se distribuye con un conjunto bien definido de separadores de palabras. Los componentes clásicos del separador de palabras y lematizador se admiten en Windows Vista y versiones posteriores. Si no se puede determinar el idioma de un documento, Windows Search intenta detectar el idioma para identificar el separador de palabras más adecuado. Windows Search intenta detectar el idioma llamando a la función GetSystemPreferredUILanguages para determinar el primer idioma de la interfaz de usuario (MUI) (que suele ser el idioma de la interfaz de usuario del sistema a menos que se instalen paquetes de idioma MUI). Si esa llamada se realiza correctamente, se usa el separador de palabras del primer idioma MUI. Si se produce un error en la llamada a GetSystemPreferredUILanguages, Windows Search recupera la configuración regional del sistema llamando a la función GetSystemDefaultLCID y usa el separador de palabras asociado a esa configuración regional.

Si no hay ningún separador de palabras instalado para un idioma, Windows Search se interrumpe en espacios en blanco mediante el separador de palabras de neutral.

Puede quitar un idioma a través del Registro, como se muestra en el ejemplo siguiente.

HKEY_LOCAL_MACHINE
   SYSTEM
      CurrentControlSet
         Control
            ContentIndex
               Language
                  Dutch_Dutch
                     (Default)
                     Locale
                     NoiseFile
                     StemmerClass = CLSID
                     WBreakerClass = CLSID

Propina

Si realiza cambios en el registro, reinicie Windows Search.

 

Cuando Windows Search requiere un nuevo separador de palabras, se lee el identificador de clase (CLSID) y se almacena en caché el separador de palabras con instancias.

Puede crear un separador de palabras personalizado para un lenguaje mediante la implementación de la interfazIWordBreaker. A continuación, Windows Search llama al IWordBreaker métodos cuando compila índices de contenido y ejecuta consultas.

La información de configuración regional del contenido indexado se recupera del origen del contenido. Si el implementador de origen no conoce la configuración regional del contenido indexado, debe establecer la configuración regional en LOCALE_NEUTRAL.

Por ejemplo, si implementa un controlador de filtro (una implementación de la interfaz IFilter), un controlador de propiedades o un controlador de protocolo, debe establecer la configuración regional del contenido indexado en LOCALE_NEUTRAL a menos que tenga información de configuración regional específica y esté seguro de su precisión.

Propina

Si una consulta de índice se basa en la entrada del usuario, la configuración regional debe coincidir con el idioma en el que el usuario escribe. Para determinar esta configuración regional, llame a la funciónGetKeyboardLayout.

 

Idiomas admitidos por wordbreakers

Windows Search incluye separadores de palabras para admitir los siguientes idiomas.

Clave del Registro Idioma (sublanguage) LCID
Arabic_SaudiArabia Árabe (neutro) 0x0001
Bengali_Default Bangla (Neutral) 0x0045
Bulgarian_Default Búlgaro (Bulgaria) 0x0402
Catalan_Default Catalán (catalán) 0x0403
Chinese_HongKong Chino (RAE de Hong Kong, PRC) 0x0C04
Chinese_Simplified Chino (simplificado) 0x0804
Chinese_Traditional Chino (tradicional) 0x0404
Croatian_Default Croata (Croacia) 0x041A
Czech_Default Checo (República Checa) 0x0405
Danish_Default Danés (Dinamarca) 0x0406
Dutch_Dutch Neerlandés (Países Bajos) 0x0413
English_UK Inglés (Reino Unido) 0x0809
English_US Inglés (Estados Unidos) 0x0409
Finnish_Default Finlandés (Finlandia) 0x040B
French_French Francés (Francia) 0x040C
German_German Alemán (Alemania) 0x0407
Greek_Default Griego (Grecia) 0x0408
Gujarati_Default Gujarati (India) 0x0447
Hebrew_Default Hebreo (neutro) 0x000D
Hindi_Default Hindi (India) 0x0439
Hungarian_Default Húngaro (Hungría) 0x040E
Icelandic_Default Islandés (Islandia) 0x040F
Indonesian_Default Indonesia (Indonesia) 0x0421
Italian_Italian Italiano (Italia) 0x0410
Japanese_Default Japonés (Japón) 0x0411
Kannada_Default Kannada (India) 0x044B
Korean_Default Coreano (Corea) 0x0412
Latvian_Default Letón (Letonia) 0x0426
Lithuanian_Default Lituano (lituano) 0x0427
Malay_Malaysia Malayo (Malasia) 0x043E
Malayalam_Default Malayalam (neutral) 0x004C
Marathi_Default Marathi (India) 0x044E
Norwegian_Bokmal Noruego (Bokmål, Noruega) 0x0414
Polish_Default Polaco (Polonia) 0x0415
Portuguese_Portugal Portugués (Portugal) 0x0816
Portuguese_Brazil Portugués (Brasil) 0x0416
Punjabi_Default Punjabi (India) 0x0446
Romanian_Default Rumano (Rumania) 0x0418
Russian_Default Ruso (neutro) 0x0019
Serbian_Cyrillic Serbio (Serbia y Montenegro, Ex, Cirílico) 0x0C1A
Serbian_Latin Serbio (Serbia y Montenegro, Antiguo, Latino) 0x081A
Slovak_Default Eslovaco (Eslovaquia) 0x041B
Slovenian_Default Esloveno (Eslovenia) 0x0424
Spanish_Modern Español (España, Ordenación moderna) 0x0C0A
Swedish_Default Sueco (Suecia) 0x041D
Tamil_Default Tamil (India) 0x0449
Telugu_Default Telugu (India) 0x044A
Thai_Default Tailandés (Tailandia) 0x041E
Turkish_Default Turco (Türkiye) 0x041F
Ukrainian_Default Ucrania (Ucrania) 0x0422
Urdu_Default Urdu (Pakistán) 0x0420
Vietnamese_Default Vietnamita (Vietnam) 0x042A

 

Nota

Los LCID para algunos idiomas de la tabla se generan mediante el identificador de idioma, el identificador de sublanguaje y el identificador de ordenación.

 

Para obtener más información sobre los idiomas y los identificadores asociados, vea constantes de identificador de idioma y cadenas.

Nota

No hay ninguna garantía de que todas estas claves del Registro de idioma estén presentes en cualquier máquina determinada. El separador de palabras de cualquier idioma determinado puede estar instalado o no en la máquina en función de la configuración del usuario.

 

a partir de Windows 8.1, la manera preferida de usar separadores de palabras es a través de la API de WinRT wordsSegmenter clase.

Recursos adicionales

  • Para obtener información sobre cómo implementar y usar separadores de palabras y lematizadores personalizados para idiomas y configuraciones regionales adicionales, consulta Extender recursos de idioma en Windows Search.
  • Si necesitas identificar el idioma de un fragmento de texto, puedes usar detección automática de idioma (LAD), que está disponible en Windows 7 y versiones posteriores. Para obtener más información, consulte Extended Linguistic Services (ELS).
  • Para obtener información sobre cómo administrar, consultar y extender el índice, consulte la Guía del desarrollador de Windows Search .

información general de Windows Search

Windows Search como plataforma de desarrollo

usar código administrado con datos de Shell y windows Search