我目前正在尝试使用javascript从自动警报中提取特定的数据。根据设备的不同,数据可以以3种可能的方式显示...
cWNotificationDescription = AP 'CC-PR555555' disassociated from Controller '111.11.111.11'.
OR.....
AP 'CC-PR555555' is being contained. This is due to rogue device spoofing or targeting AP 'CC-PR555555' BSSID on '802.11b/g' radio
OR.....
'802.11a/n' interface of AP 'CC-PR555555' associated to controller 'CC-AA-5555 (111.11.111.11)' is down.
在任何情况下,我都希望退出"CC-PR555555"
。它也可能显示为"PR55:55:55:55:55:55"
或"devicename2"
,所以诀窍是提取该位置的任何数据,因为它可以有不同的长度。
它始终以AP开头,所需的数据位于单引号‘’中,但在所有报警中,单引号中包含多个数据点,并且在其中一个报警中,所需的数据行被列出两次。
任何关于如何解压这篇文章的建议都会很棒。
发布于 2018-08-03 04:50:59
您可以使用RegEx查找您正在查找的值,这个简单的正则表达式将查找AP '
,并在下一个'
之前获取所有内容
let sampleInput = ["cWNotificationDescription = AP 'CC-PR555555' disassociated from Controller '111.11.111.11", "AP 'CC-PR555555' is being contained. This is due to rogue device spoofing or targeting AP 'CC-PR555555' BSSID on '802.11b/g' radio", "'802.11a/n' interface of AP 'CC-PR555555' associated to controller 'CC-AA-5555 (111.11.111.11)' is down."]
var r = /(?<=AP\s')CC-[^']*(?=')/;
for(let i = 0; i < sampleInput.length; i++){
console.log("Found", r.exec(sampleInput[i])[0], "in", '"', sampleInput[i], '"');
}
https://stackoverflow.com/questions/51661857
复制相似问题