Aller au contenu

LUA : string vers tableau


Messages recommandés

Posté(e)

Bonjour,

 

je galère un peu pour convertir une phrase en un tableau de mots.

La phrase peut contenir des espaces, des apostrophes, des virgules et des points.

Je souhaite garder uniquement les mots dans un tableau.

 

Je joue un peu avec gmatch et gsub mais j'arrive pas à obtenir le bon résultat...

 

Une idée ?

Posté(e) (modifié)

Bonjour,

 

Uniquement les mots donc les lettres, ceci ne ferait-il pas ton bonheur ?

 

for word in string.gmatch("Hello Lua user", "%a+") do print(word) end 
Hello 
Lua
user 

 

Modifié par pepite
  • Like 1
Posté(e)

Bonjour,

 

Le 10/01/2018 à 20:15, jared a dit :

problèmes avec les lettres accentuées

C'est a dire ? que veux tu faire ? Les enlever ?

 

@yoim : je ne fais que plagier ;-)

  • Like 1
Posté(e)

non justement.

J'ai testé ton bout de code (que j'avais déjà trouvé sur la doc officielle), mais par exemple "lumière" me retourne deux valeurs dans le tableau "lumi" et "re"...

Posté(e)

Pas testé, mais il faudrait plutôt prendre cette approche je pense :

string.gmatch("Hello Lua user", "[a-zA-Z0-9éèêàîôù]+")

Etc... bref stipuler manuellement tous les caractères spéciaux de notre langue complexe.

  • Like 2
Posté(e)

La liste est là (enfin je crois) ;):

 

for word in string.gmatch("Hello Lumière user", "[0-9a-zA-Zàáâãäåçèéêëìíîïðòóôõöùúûüýÿ]+") do print(word) end 

×
×
  • Créer...