string.find()
Fa parte della sezione Fondamenti del percorso Lua di Coddy. Lezione 48 di 90.
La funzione string.find() è uno strumento potente per cercare all'interno delle stringhe. Ti permette di cercare una stringa più breve (chiamata pattern) all'interno di una stringa più lunga e ti dice esattamente dove è stata trovata.
Ecco la sintassi di base:
string.find(text, pattern)Quando string.find() individua correttamente il pattern, restituisce due numeri: la posizione iniziale e la posizione finale della corrispondenza. Se il pattern non viene trovato, restituisce nil.
Ecco un semplice esempio:
local sentence = "The treasure is hidden here"
local start_pos, end_pos = string.find(sentence, "treasure")
print(start_pos, end_pos) -- stampa: 5 12In questo esempio, la parola "treasure" inizia alla posizione 5 e termina alla posizione 12 nella frase.
Sfida
FacileCrea un rilevatore di messaggi segreti che cerchi una parola in codice nascosta all'interno di un messaggio di testo più lungo. Dichiara una variabile chiamata message e assegnale il valore "The ancient treasure lies beneath the old oak tree". Usa la funzione string.find() per cercare la parola "treasure" all'interno del messaggio e memorizza le posizioni iniziale e finale in variabili chiamate startPos e endPos. Stampa entrambi i valori delle posizioni su righe separate.
Provalo tu
-- Dichiara la variabile message
local message = "The ancient treasure lies beneath the old oak tree"
-- TODO: Scrivi qui il tuo codice per trovare la parola "treasure" e memorizzarne le posizioni
-- Stampa le posizioni
print(startPos)
print(endPos)Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori 2: relazionali e logici
Operatori di uguaglianzaOperatori relazionaliL'operatore 'and'L'operatore 'or'L'operatore 'not'Valutazione short-circuitValori truthy e falsyRiepilogo: logica semplice7Logica condizionale di base
L'istruzione if-thenL'istruzione if-then-elseL'istruzione elseifRiepilogo - Il forziere del tesoro2Variabili e tipi di dati
Che cos'è una variabile?NumeriStringheValori booleaniIl valore 'nil'La funzione type()Convenzioni di denominazioneRiepilogo - Profilo del personaggio5Output di base
Stampare valori letteraliStampare variabiliStampare più valoriCombinare stringhe e variabiliLa funzione tostring()InputCastRipasso - Rapporto di statoRipasso - Fino a 1208Basi della manipolazione delle stringhe
string.len()string.upper & string.lowerstring.sub()string.rep()string.find()Riepilogo - Formatta il nome utente3Operatori 1: aritmetica e concatenazione
Operatori aritmeticiOperatore moduloOperatore di elevamento a potenzaConcatenazione di stringhePrecedenza degli operatoriRipasso: calcoli semplici6Progetto: visualizzazione delle statistiche del personaggio
Messaggio di benvenutoDichiara le statistiche del personaggio9Funzioni: nozioni di base
Dichiarare una funzioneChiamare una funzioneFunzioni con parametriFunzioni con più parametriL'istruzione 'return'Ripasso - Calcolatore di areaEsercitati da solo: Compilatore Lua online