Menu
Coddy logo textTech

string.find()

Parte da seção Fundamentals do Journey de Lua da Coddy — lição 48 de 90.

A função string.find() é uma ferramenta poderosa para pesquisar dentro de strings. Ela permite que você procure por uma string menor (chamada de padrão) dentro de uma string maior e informa exatamente onde ela foi encontrada.

Aqui está a sintaxe básica:

string.find(text, pattern)

Quando string.find() localiza o padrão com sucesso, ele retorna dois números: a posição inicial e a posição final da correspondência. Se o padrão não for encontrado, ele retorna nil.

Aqui está um exemplo simples:

local sentence = "The treasure is hidden here"
local start_pos, end_pos = string.find(sentence, "treasure")
print(start_pos, end_pos)  -- saída: 5 12

Neste exemplo, a palavra "treasure" começa na posição 5 e termina na posição 12 na frase.

challenge icon

Desafio

Fácil

Crie um detector de mensagens secretas que procure por uma palavra de código oculta dentro de uma mensagem de texto maior. Declare uma variável chamada message e atribua a ela o valor "The ancient treasure lies beneath the old oak tree". Use a função string.find() para procurar pela palavra "treasure" dentro da mensagem e armazene as posições inicial e final em variáveis chamadas startPos e endPos. Imprima ambos os valores de posição em linhas separadas.

Folha de consulta

A função string.find() procura por um padrão dentro de uma string e retorna as posições inicial e final da correspondência, ou nil se não for encontrado.

Sintaxe básica:

string.find(text, pattern)

Exemplo:

local sentence = "The treasure is hidden here"
local start_pos, end_pos = string.find(sentence, "treasure")
print(start_pos, end_pos)  -- saída: 5 12

Experimente você mesmo

-- Declara a variável message
local message = "The ancient treasure lies beneath the old oak tree"

-- TODO: Escreva seu código aqui para encontrar a palavra "treasure" e armazenar as posições

-- Imprime as posições
print(startPos)
print(endPos)
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentals