2014-06-16 29 views
3

我会尽量说明我的问题(1)线,(2)过滤器IPS:RegEx-Help。试图选择这些线路

我有一些终端输出,看起来像这样:

my terminal output

第一:
从这个名单我想筛选(例如)来自Safari浏览器的所有进程。所以我会得到我在图片上标记为蓝色的线条。

二: 在新的列表(过滤野生动物园线),我想以后要获取IP“- >”的迹象,直到“:HTTP

所以我用这个正则表达式:

var regexp = /->(.*):/g; 
var ip = regexp.exec(*TheBigListWithAllConnections*)[1]; 
console.log(ip); 

但是,这个正则表达式只给我第一个发现的ip。但我想ips的。

这将是很好,有一些提示如何实现这一目标!

回答

1

你只是看在regexp.exec();

结果的第一行你到了最后,在这个功能让你只需1日的比赛有[1]

尝试一个循环,在1与[i]

编辑替换[1]开始存储每条线的IP:有些Documentation

0

为了让所有的IP地址在数组中使用这个循环:

var regexp = /->([^:]+)/g, 
    matches = [], 
    input = TheBigListWithAllConnections; 

while (match = regexp.exec(input)) 
    matches.push(match[1]); 

console.log(matches); 
+0

听起来很棒。但首先我想过滤属于一个应用程序的所有行(例如像上面:safari)。所以首先我想根据“Safari”选择所有行,并且我想用你写的代码扫描IP地址。 我需要另一个正则表达式来选择这些行吗?他们怎么看起来像? – iMax