Study
Luau

String Library & Pattern Matching

Penjelasan

Luau mewarisi string library Lua yang kaya fungsi seperti `string.sub`, `string.upper`, `string.split` (tambahan Luau, tidak ada di Lua 5.1 standar), dan `string.format` untuk formatting. Selain itu, Lua/Luau punya sistem pattern matching sendiri (mirip regex tapi lebih sederhana) lewat `string.match`, `string.gmatch`, dan `string.gsub`. Pattern Lua memakai karakter khusus berbeda dari regex standar (misalnya `%d` untuk digit, `%a` untuk huruf), jadi walau terlihat mirip regex, sintaksnya tidak bisa langsung disamakan — penting dipahami terpisah saat memproses input teks seperti chat pemain atau parsing data string.

Contoh Konsep

local teks = "Skor: 150 poin"

-- Mengambil angka dari string dengan pattern
local angka = string.match(teks, "%d+")
print(angka) -- "150"

-- Split string (fitur tambahan Luau)
local bagian = string.split("apel,jeruk,mangga", ",")
for _, buah in ipairs(bagian) do
    print(buah)
end

-- Ganti bagian string dengan gsub
local hasil = string.gsub("halo dunia", "dunia", "Luau")
print(hasil) -- "halo Luau"

Praktikum

Ambil seluruh angka dari string "Level 5, HP 80, MP 30" menggunakan string.gmatch dengan pattern "%d+", lalu cetak tiap angka yang ditemukan.

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Ingat pattern Lua bukan regex penuh — tidak ada alternation `|` atau grup non-capturing seperti regex standar, jadi untuk parsing kompleks kadang lebih mudah dipecah bertahap dengan beberapa pattern sederhana.