首页 > 解决方案 > 在 lua 列表中搜索不完整的项目

问题描述

您知道如何在未完成的表格中搜索项目吗?

items = {"0x10_first_one.json", "0x20_second_one.json", "0xFF_thirs_one.json"}

local function locate( table, value )
  for i = 1, #table do
      if table[i] == value then 
          print(i) 
          return true 
      end
  end
  print( value ..' not found' ) 
  return false
end

locate(items, "0x10" )

我知道我需要搜索“0x10_first_one.json”才能得到 1。但我通常没有完整的字符串。我只有“0x10”。我如何搜索它也返回 1。

谢谢

在 Lua 列表中搜索项目

标签: lua

解决方案


我自己找到了解决方案。

function locate(table, value)
  for i = 1, #table do 
      test = tostring(table[i])
      if string.match(test, value) ~= nil then 
          print(i)
      end 
   end 
  end 

  locate(t, "0x10[_%w]+.json")

推荐阅读