Menu
Coddy logo textTech

string.find()

Coddy'nin Lua Journey'sinin Fundamentals bölümünün bir parçası — ders 48 / 90.

string.find() fonksiyonu, dizeler içinde arama yapmak için güçlü bir araçtır. Daha büyük bir dizenin içinde daha küçük bir dizeyi (desen olarak adlandırılır) aramanıza olanak tanır ve size tam olarak nerede bulunduğunu söyler.

İşte temel sözdizimi:

string.find(text, pattern)

string.find() deseni başarıyla bulduğunda, iki sayı döndürür: eşleşmenin başlangıç konumu ve bitiş konumu. Eğer desen bulunamazsa, nil döndürür.

İşte basit bir örnek:

local sentence = "The treasure is hidden here"
local start_pos, end_pos = string.find(sentence, "treasure")
print(start_pos, end_pos)  -- çıktı: 5 12

Bu örnekte, "treasure" kelimesi cümlede 5. konumda başlar ve 12. konumda biter.

challenge icon

Görev

Kolay

Daha büyük bir metin mesajı içinde gizli bir kod kelimesini arayan bir gizli mesaj dedektörü oluşturun. message adında bir değişken tanımlayın ve ona "The ancient treasure lies beneath the old oak tree" değerini atayın. Mesaj içinde "treasure" kelimesini aramak için string.find() fonksiyonunu kullanın ve başlangıç ile bitiş konumlarını startPos ve endPos adlı değişkenlerde saklayın. Her iki konum değerini de ayrı satırlara yazdırın.

Kopya kağıdı

string.find() fonksiyonu, bir dize içinde bir desen arar ve eşleşmenin başlangıç ve bitiş konumlarını döndürür; bulunamazsa nil döndürür.

Temel sözdizimi:

string.find(text, pattern)

Örnek:

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

Kendin dene

-- Mesaj değişkenini tanımlayın
local message = "The ancient treasure lies beneath the old oak tree"

-- YAPILACAK: "treasure" kelimesini bulmak ve konumları saklamak için kodunuzu buraya yazın

-- Konumları yazdırın
print(startPos)
print(endPos)
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Fundamentals bölümündeki tüm dersler