我正在寻找使用LUA检查文件夹中多个文件名的有效性。
我可以将文件名作为变量传递(定义为a.message),并且我需要脚本来运行所有正则表达式模式,如果该模式与任何一个都不匹配,请打印“我们需要警报”。
a = alarm.get ("GF91908920-49330")
if regexp (a.message,"/CCF_[0-9]{6}_[0-9]{2}.csv/") then
if regexp (a.message,"/Issues_[0-9]{4}-[0-9]{2}-[0-9]{2}.csv/") then
if regexp (a.message,"/POL_Operator_[0-9]{6}_[0-9]{2}.csv/") then
else print ("We need an alarm - ", a.message)
end
end
end
Run Code Online (Sandbox Code Playgroud)
因此,如果变量与正则表达式模式之一匹配,则很好,然后结束。如果没有,继续前进并检查是否与其他任何模式都匹配,如果找到匹配项则结束。
如果在任何正则表达式中均未找到匹配项,则打印“我们需要警报”。
我希望这很清楚。
谢谢。
您所描述的是逻辑析取或所谓的OR。请参阅Wikipedia文章和Lua 3.3中的编程。
a = alarm.get("GF91908920-49330")
if regexp(a.message, "/CCF_[0-9]{6}_[0-9]{2}.csv/") or
regexp(a.message, "/Issues_[0-9]{4}-[0-9]{2}-[0-9]{2}.csv/") or
regexp(a.message, "/POL_Operator_[0-9]{6}_[0-9]{2}.csv/") then
-- do something
else
print("We need an alarm - ", a.message)
end
Run Code Online (Sandbox Code Playgroud)
假设您实际上已regexp实现,仅此而已。如果否,则在Lua中有可用的模式。您可以在Lua 20.2编程中阅读有关它们的信息。
在提出问题之前,我强烈建议您学习基础知识并至少进行最少的研究。Lua编程可在线获得,这是从Lua开始的好方法。
| 归档时间: |
|
| 查看次数: |
45 次 |
| 最近记录: |