gpt4 book ai didi

字符串模式,匹配第一对最外面的括号?

转载 作者:行者123 更新时间:2023-12-02 09:29:26 24 4
gpt4 key购买 nike

这是一个简单的例子,假设我有一个等式

local equation = "((5*2)+3)-(3^5)"

我想捕获“((5*2)+3)”

一开始我尝试过

equation:match("%((.*)%)")

但是*是贪婪的,所以它捕获了整个方程。

然后我尝试了

equation:match("%((.-)%)")

但是 - 很懒,它捕获了 "((5*2)"

显然我的做法是错误的。我应该如何用字符串模式捕获括号?

最佳答案

您正在寻找的是 %b 模式,它与平衡字符串匹配。在此示例中,您可以使用 %b() 来匹配以 ( 开头,并以相应的 ) 结尾的字符串:

equation:match("%b()")

关于字符串模式,匹配第一对最外面的括号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34703151/

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