【问题标题】:How to get a word between two string in lua? [closed]如何在lua中的两个字符串之间获取一个单词? [关闭]
【发布时间】:2018-09-26 12:35:25
【问题描述】:

我想在这样的两个字符串之间找一个词

local str = "Hello Stackoverflow guys"

假设两个字符串之间的单词(Stackoverflow)是未知的,我想得到这个。

有这个功能吗?

【问题讨论】:

  • 鼓励编辑问题以改进它们(例如澄清、添加其他信息等)鼓励。但是,编辑问题以将其更改为导致答案无效的不同问题,违反了 Stack Overflow 的政策。您在此处的编辑就是这样做的。该政策是其他用户应主动恢复此类更改。我在这里这样做了。 我们鼓励您ask a new Question,也许可以提供指向此链接的链接以获取更多上下文。我们想提供帮助,但您的新问题/附加问题必须是新问题。

标签: string function lua


【解决方案1】:

您可以为此使用带有捕获的字符串模式。

https://www.lua.org/manual/5.3/manual.html#6.4.1

string.match("Hello Stackoverflow guys", "Hello (%a+) guys")

返回介于“Hello”和“guys”之间的任何至少 1 个字母的单词。 在这种情况下,它是“Stackoverflow”。

您当然可以使用不同的模式来包含数字或其他字符。无论你认为是什么词。

当然,也可以在不指定“Hello”和“guys”或其他任何内容的情况下获取第二个单词。只需阅读手册即可。

【讨论】:

  • 其实我想在第 8 行的 <meta property="og:title" content=""> 之间找到一个词
  • 如果不清楚如何用您要使用的字符串替换“Hello”和“guys”,也许您需要更详细地查看链接文档。
  • 看:`local source = http.request('t.me/joinchat/SomeThing')`实际上我想在第 8 行中找到一个词:<meta property="og:title" content=""> 我应该如何处理源代码。谢谢
【解决方案2】:

如果你不知道的话,你可以做

string.match("Hello Stackoverflow guys", "%s+(%S+)")

这会找到第一次运行的空白并捕获接下来运行的非空白字符。

【讨论】:

  • 看:`local source = http.request('t.me/joinchat/SomeThing')`实际上我想在第 8 行中找到一个词:<meta property="og:title" content=""> 我应该如何处理源代码。谢谢
  • @Puryanms,如果你单独问一个问题似乎会更好。
猜你喜欢
  • 1970-01-01
  • 2013-06-13
  • 1970-01-01
  • 2018-03-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多