utf8

Mostrar obsoleto

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

Esta biblioteca proporciona soporte básico para UTF-8 codificación.Esta biblioteca no proporciona ningún soporte para Unicode además del manejo del código de codificación.Cualquier operación que necesite el significado de un personaje, como la clasificación de personajes, está fuera de su alcance.

A menos que se indique lo contrario, todas las funciones que esperan una posición de bytes como parámetro asumen que la posición dada es el comienzo de una secuencia de bytes o uno más la longitud de la cadena del sujeto.Como en la biblioteca de cadenas, los índices negativos se cuentan desde el final de la cadena.

Puedes encontrar un gran catálogo de caracteres útiles UTF-8 utilizables aquí .

Resumen

Funciones

Propiedades

  • El patrón "[%z\x01-\x7F\xC2-\xF4][\x80-\xBF]*" , que coincide exactamente con cero o más secuencias de bytes UTF-8, asumiendo que el sujeto es una cadena válida de UTF-8.

Funciones

char

Recibe cero o más puntos de código como enteros, convierte cada uno a su secuencia de bytes UTF-8 correspondiente y devuelve una cadena con la concatenación de todas estas secuencias.

Parámetros

codepoints: Tuple<number>

Devuelve

Devuelve una función iteradora para que la construcción:


for position, codepoint in utf8.codes(str) do
-- cuerpo
end

iterará sobre todos los puntos de código en la cadena str. Levanta un error si se encuentra con cualquier secuencia de bytes inválida.

Parámetros

str: string

La cadena para iterar.

codepoint

Devuelve los puntos de código (como enteros) de todos los puntos de código en la cadena proporcionada (str) que comienzan entre las posiciones de bytes i y j (ambos incluidos).El predeterminado para i es 1 y para j es i .Lleva a cabo un error si se encuentra con cualquier secuencia de bytes inválida.

Parámetros

str: string

El índice del punto de código que debe recuperarse de esta cadena.

Valor predeterminado: 1

El índice del último punto de código entre i y j que se devolverá. Si se excluye, esto se convertirá en el valor de i .

Valor predeterminado: i

Devuelve

Devuelve el número de puntos de código UTF-8 en la cadena str que comienzan entre las posiciones i y j (ambos inclusivos).El predeterminado para i es 1 y para j es -1 .Si encuentra alguna secuencia de bytes inválida, devuelve un valor nulo más la posición del primer byte inválido.

Parámetros

La posición de inicio.

Valor predeterminado: 1

La posición final.

Valor predeterminado: -1

Devuelve

offset

Devuelve la posición (en bytes) donde comienza la codificación del punto de código n de s (cuenta desde la posición de bytes i)Un negativo n obtiene caracteres antes de la posición i .El predeterminado para i es 1 cuando n es no negativo y #s + 1 de lo contrario, para que utf8.offset(s, -n) obtenga el desplazamiento del personaje n desde el final de la cadena.Si el personaje especificado no está ni en el tema ni justo después de su finalizar, la función devuelve nil .

Parámetros

Valor predeterminado: 1

Devuelve

graphemes

Devuelve una función iteradora para que


for first, last in utf8.graphemes(str) do
local grapheme = s:sub(first, last)
-- cuerpo
end

iterará los grupos de grafemas de la cadena.

Parámetros

Devuelve

nfcnormalize

Convierte la cadena de entrada a la forma normal C, que intenta convertir caracteres descompuestos en caracteres compuestos.

Parámetros

str: string

Devuelve

nfdnormalize

Convierte la cadena de entrada a la forma normal D, que intenta dividir los caracteres compuestos en caracteres descompuestos.

Parámetros

str: string

La cadena para convertir.

Devuelve

Propiedades

charpattern

El patrón "[%z\x01-\x7F\xC2-\xF4][\x80-\xBF]*" , que coincide exactamente con cero o más secuencia de bytes UTF-8, asumiendo que el sujeto es una cadena válida de UTF-8.