gpt4 book ai didi

string - 如何捕获括号之间的字符串?

转载 作者:行者123 更新时间:2023-12-02 08:58:41 26 4
gpt4 key购买 nike

str = "fa, (captured)[asd] asf, 31"

for word in str:gmatch("\(%a+\)") do
print(word)
end

嗨!我想捕获括号之间的单词。

我的代码应该打印“已捕获”字符串。

lua: /home/casey/Desktop/test.lua:3: invalid escape sequence near '\('

我遇到了这个语法错误。

当然,我可以找到括号的位置并使用 string.sub 函数

但我更喜欢简单的代码。

此外,括号也给了我类似的错误。

最佳答案

Lua模式中的转义字符是%,而不是\。所以使用这个:

word=str:match("%((%a+)%)")

如果您只需要一次匹配,则不需要 gmatch 循环。

要捕获方括号中的字符串,请使用类似的模式:

word=str:match("%[(%a+)%]")

如果捕获的字符串不完全由字母组成,请使用.-而不是%a+

关于string - 如何捕获括号之间的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26277374/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com