如何使用Lua打印基于列的word?有点像awk
我想知道Lua中是否有类似于awk的东西。 例如,我有以下字符串如何使用Lua打印基于列的word?有点像awk,awk,lua,Awk,Lua,我想知道Lua中是否有类似于awk的东西。 例如,我有以下字符串 "This is a cup of tea" 我想打印出来 "cup" 通过使用列号,是否有这样的函数,或者我必须创建自己的函数 查找单词不起作用,因为单词前后可能会发生变化。Lua没有“概念”列。您需要手动执行此操作: local t = {} for word in line:gmatch("%S+") do table.insert(t, word) end 然后使用列号访问t,如t[4]尝试以下操作: s="Th
"This is a cup of tea"
我想打印出来
"cup"
通过使用列号,是否有这样的函数,或者我必须创建自己的函数
查找单词不起作用,因为单词前后可能会发生变化。Lua没有“概念”列。您需要手动执行此操作:
local t = {}
for word in line:gmatch("%S+") do
table.insert(t, word)
end
然后使用列号访问t
,如t[4]
尝试以下操作:
s="This is a cup of tea"
function column(s,n)
local p=string.rep("%s+.-",n-1).."(%S+)"
return s:match(p)
end
for n=1,10 do
print(n,column(s,n))
end
如果您只需要第n列,那么不必为表操心,只需计数和中断。
s:gsub(“%s+”,“”,n-1):匹配“%s+”