Lua - Chaînes de caractères
Bonjour, aspirants programmeurs ! Aujourd'hui, nous plongeons dans le merveilleux monde des chaînes de caractères en Lua. En tant que votre professeur d'informatique de quartier, je suis excité de vous guider dans ce voyage. Imaginons les chaînes de caractères comme les mots et les phrases de la programmation - elles sont notre moyen de travailler avec du texte dans notre code. Alors, mettez vos casquettes d'apprentissage et c'est parti !
Manipulation de chaînes
En Lua, les chaînes de caractères sont comme des séquences magiques de caractères que nous pouvons manipuler de diverses manières. Commençons par les bases :
Création de chaînes
local salutation = "Hello, World!"
local nom = 'Alice'
local multiline = [[
Ceci est une
chaîne multiligne
]]
Dans cet exemple, nous avons créé trois chaînes :
-
salutation
utilise des guillemets doubles -
nom
utilise des apostrophes simples -
multiline
utilise des doubles crochets pour plusieurs lignes
Les apostrophes simples et les guillemets doubles fonctionnent de la même manière, mais utiliser des doubles crochets permet d'inclure des sauts de ligne.
Concaténation
La concaténation est juste un mot fancy pour dire que nous joignons des chaînes ensemble. En Lua, nous utilisons l'opérateur ..
:
local prenom = "John"
local nom_de_famille = "Doe"
local nom_complet = prenom .. " " .. nom_de_famille
print(nom_complet) -- Output: John Doe
Ici, nous avons joint prenom
, un espace, et nom_de_famille
pour créer nom_complet
.
Manipulation de la casse
Parfois, nous avons besoin de crier (majuscules) ou de chuchoter (minuscules) nos chaînes :
local texte = "Hello, Lua Learners!"
print(string.upper(texte)) -- Output: HELLO, LUA LEARNERS!
print(string.lower(texte)) -- Output: hello, lua learners!
Les fonctions string.upper()
et string.lower()
font exactement ce que vous attendriez - elles transforment notre texte en majuscules ou en minuscules.
Remplacement d'une sous-chaîne
Besoin de trouver et de remplacer une partie d'une chaîne ? Lua est là pour vous :
local phrase = "J'aime les pommes, les pommes sont mon fruit préféré."
local nouvelle_phrase = string.gsub(phrase, "pommes", "oranges")
print(nouvelle_phrase) -- Output: J'aime les oranges, les oranges sont mon fruit préféré.
Ici, string.gsub()
remplace toutes les occurrences de "pommes" par "oranges". C'est comme un find-and-replace dans votre traitement de texte !
Recherche et inversion
Recherche de sous-chaînes
Pour trouver une sous-chaîne dans une chaîne, nous utilisons string.find()
:
local texte = "Lua est fun et puissant !"
local debut, fin = string.find(texte, "fun")
print("'fun' commence à la position " .. debut .. " et se termine à " .. fin)
-- Output: 'fun' commence à la position 8 et se termine à 10
Cette fonction renvoie les positions de début et de fin de la sous-chaîne.
Inversion de chaînes
Vous voulez lire votre chaîne à l'envers ? Utilisez string.reverse()
:
local avant = "Lua est awesome"
local arriere = string.reverse(avant)
print(arriere) -- Output: emosewa si auL
C'est comme par magie - votre texte est instantanément inversé !
Formatage de chaînes
Formater des chaînes est crucial lorsque vous voulez créer du texte dynamique. Lua offre un moyen puissant de le faire :
local nom = "Alice"
local age = 30
local formate = string.format("Mon nom est %s et j'ai %d ans.", nom, age)
print(formate)
-- Output: Mon nom est Alice et j'ai 30 ans.
Dans cet exemple, %s
est remplacé par la chaîne nom
, et %d
est remplacé par le nombre age
. C'est comme remplir les blancs dans une phrase !
Représentations de caractères et d'octets
Lua nous permet de travailler avec des caractères individuels dans une chaîne :
local str = "Lua"
print(string.byte(str, 1)) -- Output: 76 (code ASCII pour 'L')
print(string.char(76)) -- Output: L
string.byte()
nous donne le code ASCII d'un caractère, tandis que string.char()
fait l'inverse.
Autres fonctions courantes
Jetons un coup d'œil à quelques autres fonctions utiles pour les chaînes :
Fonction | Description | Exemple |
---|---|---|
string.len() |
Retourne la longueur d'une chaîne | print(string.len("Lua")) -- Output: 3 |
string.rep() |
Répète une chaîne | print(string.rep("Ha", 3)) -- Output: HaHaHa |
string.sub() |
Extrait une sous-chaîne | print(string.sub("Lua est fun", 1, 3)) -- Output: Lua |
Ces fonctions sont comme des couteaux suisses pour la manipulation de chaînes - incroyablement polyvalentes et utiles !
En conclusion, les chaînes en Lua sont des outils puissants qui nous permettent de travailler avec du texte de manière créative. Souvenez-vous, la pratique rend parfait, donc n'ayez pas peur d'expérimenter avec ces fonctions. Avant de vous en rendre compte, vous serez en train de assembler des programmes complexes avec aisance !
Bonne programmation, futurs programmeurs ! Et souvenez-vous, dans le monde de la programmation, chaque caractère compte - littéralement !
Credits: Image by storyset