Red de conocimiento informático - Problemas con los teléfonos móviles - Programación semántica

Programación semántica

Guarde el siguiente código como lua_string.lua:

#!/usr/bin/env? lua?

s? =?{}

¿Respuesta? =?io.leer()? - ?Leer una cadena que puede contener caracteres chinos.

Carril. =?#(string.gsub(a,?"[\128-\191]",?"")) - ?Cuente el número de caracteres (no el número de bytes)

Imprimir (lente )

¿Para qué? ¿do? ¿existir? ¿Qué significa string.gmatch(a,?".[\128-\191]*")? - ?iterar cada carácter

si? Carolina del Sur]? ==?Cero? ¿Entonces qué? - ? y contar el número de ocurrencias.

s[c]? =?1

Otro

s[c]? =?s[c] 1

Fin

Fin

¿Para qué? k,v? ¿existir? ¿Derecho(s)? Hacer-? Imprimir resultados

Imprimir (k,? cinco)

FinAunque el título no menciona específicamente la compatibilidad con Unicode, considerando que los caracteres multibyte ahora son muy comunes, también se incluye UTF- 8 soporte.

Para obtener puntos de conocimiento, consulte los siguientes capítulos de la tercera edición de "Programación LUA":

- 2.1 Cero

- 4.3 Estructura de control

- 7.2 La semántica general de for

- 21.1 Funciones de cadena básicas

- 21.2 Funciones de coincidencia de patrones

- 21.7 Unicode

Modelo de E/S simple

El resultado de la prueba es el siguiente:

moose@debian: ~/Code/Baidu_knowledge/Lua_string$? . /lua_string.lua?

Ni Hao, hola

Siete

a1

h1

Está bien, 1

i1

tu1

o1

n1

moose @ debian:~/Code/Baidu _ conocimiento/Lua _ cadena $ ? . /lua_string.lua?

Hola, hola.

Cuatro

Bueno 2

Níquel 2

moose@debian: ~/Code/Baidu_knowledge/Lua_string$? . /lua_string.lua?

Programación en lenguaje Lua: ingrese una cadena con una longitud no mayor a 50 y encuentre el número de apariciones de cualquier carácter en la cadena.

43

a1

Operador 3

1

Medio 1

, 2

Número 1

Buscar 2

Cadena 2

l1

01

Grado 1

Super 1

u1

Puntuación total 2 puntos

Número 1

1

Número 1

1

p>

Escuela Secundaria 1

Entrada 1

Cheng 1

: 1

1 de

Significa 1

Idioma 1

1

. 1

Ingrese 1

Ahora 1

Usar 1

Longitud 1

Cualquiera 1

51

Palabra 3

Yan 1

Quiero 1

Más de 1