闲着没事,写了个javascript正则表达式分组的小例子,将日志分类提取。
<!DOCTYPE html>
<html>
<head>
<title>test js regular expression<</title>
<script type="text/javascript">
function test() {
alert("OK");
var str = "Dec 6 14:35:09 2013 test-VX9000a mgmmgm[1682]: [clinc] admin@localhost modify /net/mac/test/mgmt0/testaddr succeeded params:address=00:0C:89:EC:B0:45"
document.write(str + "</br>");
var regex = regex = /^(\w+\s+\d+\s+\d+:\d+:\d+\s+\d+)\s+(\w+-?\w+)\s+\w+\[(\d+)\]:?\s+\[([\w\/\d]+)\]\s+(\w+@[\w.\d\/]+)\s+(\w+)\s?((\/\w+)+|(system\s+[\w\/]+))?\s?([^p\s]+)?\s?(params:.*)?$/ig;
var result = "";
while(result = regex.exec(str)) {
document.write(result[1] + "</br>");
document.write(result[2] + "</br>");
document.write(result[3] + "</br>");
document.write(result[4] + "</br>");
document.write(result[5] + "</br>");
document.write(result[6] + "</br>");
document.write(result[7] + "</br>");
document.write(result[10] + "</br>");
document.write(result[11] + "</br>");
}
}
window.onload = test;
</script>
</head>
<body>
<p id="test">test js regular expression</p>
</body>
</html>