string.gmatch returns an iterator that walks matches in a string.

Gmatch Words

gmatch_words.lua
local text = 
local count = 0
local lastWord = ""

for word in string.gmatch(text, "%w+") do
  count = count + 1
  lastWord = word
end

print("text=" .. text)
print("count=" .. count)
print("lastWord=" .. lastWord)
local text = 
local count = 0
local lastWord = ""

for word in string.gmatch(text, "%w+") do
  count = count + 1
  lastWord = word
end

print("text=" .. text)
print("count=" .. count)
print("lastWord=" .. lastWord)
local text = 
local count = 0
local lastWord = ""

for word in string.gmatch(text, "%w+") do
  count = count + 1
  lastWord = word
end

print("text=" .. text)
print("count=" .. count)
print("lastWord=" .. lastWord)
pattern iterator `string.gmatch` fits directly in a generic `for` loop and yields one match at a time.