From aa98e6b7ce442bbc4dac0bea968a5b01a4cd71b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lassi=20H=C3=A4m=C3=A4l=C3=A4inen?= Date: Mon, 13 Jan 2014 01:41:41 +0200 Subject: [PATCH] Improved parser.js. Accepts more different log-file formats. --- lib/parser.js | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/lib/parser.js b/lib/parser.js index e823205..d5f939b 100644 --- a/lib/parser.js +++ b/lib/parser.js @@ -1,6 +1,6 @@ /** @module parser */ -var messageRegEx = /(\d\d):(\d\d) <.(.*?)> (.*)/ +var messageRegEx = /(\d\d):(\d\d)(:(\d\d))? *<.(.*?)> (.*)/ , moment = require('moment'); /** @@ -11,15 +11,18 @@ var messageRegEx = /(\d\d):(\d\d) <.(.*?)> (.*)/ module.exports = function LogParser(msg) { var result = messageRegEx.exec(msg); - if (result && result[4]) { + if (result && result[6]) { var time = moment(); time.hour(parseInt(result[1], 10)); time.minute(parseInt(result[2], 10)); - time.second(0); + if (result[4]) + time.second(parseInt(result[4], 10)); + else + time.second(0); return { /*"time": time,*/ - "nick": result[3].trim(), - "msg": result[4] + "nick": result[5].trim(), + "msg": result[6]; }; } return false;