gpt4 book ai didi

makefile - Lua正则表达式匹配makefile中的模式

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

我正在编写一个脚本来自动维护我的 makefile。我需要一个与以下几行匹配的 Lua 模式:

# objects {
objects = build/somefile1.o \
build/somefile2.o \
...
build/somefileN.o \

# } objects

我尝试使用%#对象%{[a-z%.%s%/%\\]+%# %}对象但它似乎不起作用。

最佳答案

我建议使用:

"\n(# objects %b{} objects)"

要使其在匹配位于字符串开头的情况下工作,您需要在字符串输入前面添加换行符。这里,首先匹配换行符,然后#objects,然后是空格,然后%b{}匹配平衡的嵌套花括号(如果有),然后objects 已匹配。

运行提取时,捕获的部分(在 (...) 内)将通过 string.gmatch 返回。

请参阅Lua online demo

s = [[ YOUR_TEXT_HERE ]]
for m in string.gmatch("\n" .. s, "\n(# objects %b{} objects)") do
print(m)
end

关于makefile - Lua正则表达式匹配makefile中的模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41392186/

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