string.gmatch tokenisointiin
Käykää läpi kaikki merkkijonon osumat string.gmatch-funktiolla.
string.gmatch tokenisointiin on ilmainen Lua Academy-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Lua Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Lua Academy-kurssilla on yhteensä 4 oppituntia.
Mikä on string.gmatch?
string.gmatch(s, pattern) palauttaa iteraattorin, joka palauttaa peräkkäin kaikki kuvion pattern osumat merkkijonosta s.
Sanojen läpikäynti
Jäsentäkää merkkijono sanoiksi etsimällä välilyömättömien merkkien jaksoja.
local s = "the quick brown fox"
for word in s:gmatch("%S+") do
print(word)
endOsumien kerääminen taulukkoon
Kerätkää kaikki osumat taulukkoon jatkokäsittelyä varten.
local function split(s, pat)
local parts = {}
for token in s:gmatch(pat) do
parts[#parts+1] = token
end
return parts
end
local words = split("one two three", "%S+")
print(#words) -- 3Numeroiden poimiminen
Poimikaa kaikki kokonaisluvut merkkijonosta kuviolla %d+.
local s = "x=10, y=20, z=30"
for n in s:gmatch("%d+") do
print(tonumber(n))
endKaappausten käyttäminen gmatch-funktiossa
Kun kuvio sisältää kaappauksia, kukin iteraatio palauttaa koko osuman sijaan kaapatut ryhmät.
local s = "from=Alice, to=Bob, cc=Carol"
for k, v in s:gmatch("(%w+)=(%w+)") do
print(k, "->", v)
endCSV-jäsennin
Jakakaa CSV-rivi kaappaamalla pilkkujen väliin jäävä sisältö.
local csv = "apple,banana,cherry,date"
for field in (csv .. ","):gmatch("([^,]*),") do
print(field)
endAvain–arvo-parien jäsentäminen
Jäsentäkää HTTP-tyylinen otsikkomerkkijono avain–arvo-parien taulukoksi.
local headers = "Content-Type: text/html; Content-Length: 1234"
local parsed = {}
for k, v in headers:gmatch("([%w%-]+): ([^;]+)") do
parsed[k] = v:match("^%s*(.-)%s*$")
endKuvio-osumien laskeminen
Laskekaa, kuinka monta kertaa kuvio esiintyy merkkijonossa.
local function count(s, pat)
local n = 0
for _ in s:gmatch(pat) do n = n + 1 end
return n
end
print(count("banana", "an")) -- 2Lauseiden jäsennin
Jakakaa teksti lauseiksi etsimällä välimerkkiin asti ulottuvia osumia.
local text = "Hello. How are you? Fine!"
for sent in text:gmatch("[^.!?]+[.!?]?") do
print(sent:match("^%s*(.-)%s*$"))
endgmatch ja string.find silmukassa
gmatch on suositeltu tapa käydä kaikki osumat läpi. string.find-funktion käyttäminen while-silmukassa on monisanaisempaa ja alttiimpaa virheille.
Unicodea koskeva huomautus
Lua-kuviot toimivat tavuilla. Monitavuiset UTF-8-merkit eivät välttämättä vastaa yhden merkin kuvioita oikein. Käyttäkää täyteen Unicode-tukeen UTF-8-kirjastoa.
gmatchia koskeva kysymys
Mitä for w in s:gmatch("%S+") do käy läpi?
Kertaus: string.gmatch
string.gmatch on Lua-kielen vakiomuotoinen jäsennin. Käyttäkää sitä merkkijonojen jakamiseen, kaikkien numeroiden poimimiseen, avain–arvo-parien jäsentämiseen ja kuvio-osumien laskemiseen selkeässä iteraattorisilmukassa.
Opi Lua tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 40
- Oppitunnit
- 159
Usein kysytyt kysymykset
Onko oppitunti ”string.gmatch tokenisointiin” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Lua Academy-oppimispolun 3 oppituntia, myös oppitunnin “string.gmatch tokenisointiin”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Lua Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”string.gmatch tokenisointiin”?
Käykää läpi kaikki merkkijonon osumat string.gmatch-funktiolla. Harjoittelet Lua Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Lua Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Lua Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.
Kuinka kauan ”string.gmatch tokenisointiin”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Lua Academy-oppitunnilla?
Kyllä. Jokainen Lua Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Lua-hahmosyntaksi
- Kaappaukset ja string.match
- string.gmatch tokenisointiin
- string.gsub muunnoksiin