我有一个xml页面,我有一个监控系统扫描,这里是源数据:
`<queues>
<queue name="workQueue">
<stats size="0" consumerCount="28" enqueueCount="29320" dequeueCount="37000"/>
Run Code Online (Sandbox Code Playgroud)
这是我到目前为止的代码:
local pattern = " size=(%d+) "
local a = alarm.get("CO13974960-19518")
local vsize = string.match(a.message, pattern)
local sum = vsize
Run Code Online (Sandbox Code Playgroud)
我正在尝试从XML页面中定位这一部分数据:
stats size="0"
Run Code Online (Sandbox Code Playgroud)
值"0"是我感兴趣的数字,我正在寻找一种方法来通过脚本捕获该数字(无论它到达什么).
我想我的脚本正在寻找:
size=0 而不是 size="0"
但我不确定如何执行此操作的正确语法.
我正在寻找使用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)
因此,如果变量与正则表达式模式之一匹配,则很好,然后结束。如果没有,继续前进并检查是否与其他任何模式都匹配,如果找到匹配项则结束。
如果在任何正则表达式中均未找到匹配项,则打印“我们需要警报”。
我希望这很清楚。
谢谢。