正则表达式匹配警报消息

时间:2014-02-28 19:09:47

标签: javascript regex

这些可能会在大字符串中多次出现。 Javascript Regex ..

尝试匹配这两种情况 - (粗体文本):首先,结束于),第二个结束第一个结肠。

sometext sometext 警告消息:\\ SERVERNAME:TFTP服务已关闭 - 没有心跳。 (\\ SERVERNAME)

和此:

IP地址:1.1.1.1:警报消息:设备名称无法访问:事件类:/状态/ Ping:站点:

这适用于第二个,但不适用于第一个

.match(/Alert Message:.*? :/g)

什么rx会匹配这两种情况?

2 个答案:

答案 0 :(得分:1)

你可以使用管道'|'表示正则表达式中的“或”。你也可以使用。*?浏览文本中不重要的部分以查找重要的部分。以下是有效的示例:http://jsfiddle.net/985Kg/

var regex = new RegExp('(Alert Message.*?TFTP service is down - no heartbeat.|Alert Message: device name is unreachable)');

alert(regex.test('Alert Message: \\SERVERNAME: TFTP service is down - no heartbeat. (\\SERVERNAME)')); // alerts 'true'.

答案 1 :(得分:0)

尝试以下方法:

.match(/Alert Message:/g)

这更通用,可能会触发误报。