【问题标题】:Lua not finding subsringLua没有找到子字符串
【发布时间】:2020-05-16 08:37:28
【问题描述】:

我和lua string.find not recognising substring有同样的问题,但我尝试了其中的建议,但无济于事。

                    local share_index = master_table[line_index]
                    local string_dump = table.concat(holding_table," ")
                    local string_search_start = string.find(string_dump,share_index)

                    holding_table[line_index] = (master_table[line_index])

                    print ("share index:"..share_index..":")
                    print ("string_dump:"..string_dump..":")
                    print ("string_start:",string_search_start)
                    print ("string_end:",string_search_end)
                    string.find("mypattern", "pat")
                    print(share_index:byte(1,-1)) 
                    print(string_dump:byte(1,-1)

这部分代码应该从表中转储字符串并检查当前处理的字符串是否在从表中转储的内容中找到。它总是返回零。我已将其转换为字节码,以查看是否隐藏了任何东西,并且那里什么也没有。为了确定,我已经修剪了空格(此处未显示,我将其删除,因为它不起作用。)我已经为“我的模式”和“pat”手动添加了纯文本,但也没有找到。

我不知道这里出了什么问题。它必须是简单明了的东西,但我就是不明白。任何帮助表示赞赏。

【问题讨论】:

  • 您能否包含holding_tableshare_index 的示例值
  • bobs_home_dir cheese-please MP3_Collection 以上每一项都将在表格中的单独元素中。问题是当我有两次出现同一个目录时,我正在做双重处理。我希望能够先检查目录是否是表;做一个 string.find 似乎是一个简单的解决方案,但这让我抓狂
  • 你的问题是你的字符串中有一些值,这使得它们不适合作为模式。特别是cheese-please 里面有一个-
  • string.find(string_dump, share_index, 1 true)

标签: string lua lua-patterns


【解决方案1】:

谢谢你,Egor 和 Nifim。这就是我一直在寻找的。

我使用了 Egor 为修复提供的响应...请注意,Egor 缺少逗号。所以最终看起来像:

string.find(string_dump, share_index, 1, true)

【讨论】:

    猜你喜欢
    • 2019-03-11
    • 2012-10-09
    • 2016-11-24
    • 2013-04-14
    • 2019-04-23
    • 2013-06-09
    • 2013-06-18
    • 2020-05-15
    • 2020-02-20
    相关资源
    最近更新 更多