español - tolowercase javascript para que sirve
¿Qué configuración regional debo especificar cuando llamo a String toLowerCase? (2)
En Java, el método String toLowerCase usa la configuración regional predeterminada del sistema para determinar cómo manejar las minúsculas. Si estoy escribiendo en minúscula algún texto ASCII y quiero estar seguro de que esto se procesa como se espera, ¿qué Locale debo usar?
EDITAR: Me preocupan principalmente los identificadores de programación, como los nombres de tablas y columnas en un esquema. Como tal quiero que se aplique la carcasa inferior inglesa.
Locale.ROOT declara que es la configuración regional neutral de idioma / país para las operaciones sensibles a la configuración regional
Locale.ENGLISH presumiblemente también sería una opción segura.
Si estoy escribiendo en minúscula algún texto ASCII y quiero estar seguro de que esto se procesa como se espera, ¿qué Locale debo usar?
Eso depende de lo que "como se espera" significa para ti. El punto de permitir especificar una configuración regional es que el uso de mayúsculas / minúsculas no funciona de la misma manera en todos los idiomas, aunque pueden usar las mismas letras. Por lo tanto, especifique la Localidad en la que usted y / o sus clientes viven, y probablemente funcionará como ellos / ellos esperan.
Sí, Locale.ENGLISH
es una opción segura para operaciones de casos para cosas como los identificadores de lenguaje de programación y partes de URL, ya que no implica reglas especiales de carcasas y todos los caracteres ASCII de 7 bits en el INGLÉS caso convertido a caracteres ASCII de 7 bits .
Eso no es cierto para todas las demás configuraciones regionales. En turco, los caracteres "I" e "i" no se convierten a mayúsculas y minúsculas.
"Yo con puntos y sin puntos" explica:
El alfabeto turco, que es una variante del alfabeto latino, incluye dos versiones distintas de la letra I, una con puntos y la otra sin puntos.
En Unicode, U + 0131 es una letra minúscula sin punto i (ı). U + 0130 (İ) es mayúscula i con punto. ISO-8859-9 los tiene en las posiciones 0xFD y 0xDD respectivamente. En la tipografía normal, cuando la minúscula i se combina con otros signos diacríticos, el punto generalmente se retira antes de agregar el diacrítico; sin embargo, Unicode aún enumera las secuencias de combinación equivalentes que incluyen la i con puntos, ya que, lógicamente, es el carácter i con puntos normal que se está modificando.
La mayoría de las mayúsculas y minúsculas del software Unicode ı a I y minúsculas İ a i, pero, a menos que se haya configurado específicamente para turco, se escribe minúscula I a i y mayúsculas i a I. Por lo tanto, mayúsculas y minúsculas, o viceversa, cambia las letras.
La lista de excepciones especiales se mantiene en http://unicode.org/Public/UNIDATA/SpecialCasing.txt
# ================================================================================ # Turkish and Azeri # I and i-dotless; I-dot and i are case pairs in Turkish and Azeri # The following rules handle those cases. 0130; 0069; 0130; 0130; tr; # LATIN CAPITAL LETTER I WITH DOT ABOVE 0130; 0069; 0130; 0130; az; # LATIN CAPITAL LETTER I WITH DOT ABOVE # When lowercasing, remove dot_above in the sequence I + dot_above, which will turn into i. # This matches the behavior of the canonically equivalent I-dot_above 0307; ; 0307; 0307; tr After_I; # COMBINING DOT ABOVE 0307; ; 0307; 0307; az After_I; # COMBINING DOT ABOVE
...