我正在尝试从包含搜索信息的文本文件中读取:IP地址,搜索时间,搜索字词以及点击的链接。我试图逐行遍历文件,并在每一个上提取IP地址,我这样做是通过将每个字符添加到一个字符串,直到我到达该行的第一个空格。但是,正如您在屏幕截图中看到的那样,IP地址和时间之间的差距远大于海平面和压力之间的差距。这个差距没有被记录为一个空间,程序在整个线路中找到的第一个空间是海平面和压力之间的空间。因此,我无法仅提取IP。有没有办法解决这个问题或修复它?
答案 0 :(得分:0)
根据您的语言,'/\s+/'
应该可以解决问题。
答案 1 :(得分:0)
string line = extract_line();
String ip_pattern =“^(?:[0-9] {1,3}。){3} [0-9] {1,3} $”;
模式r = Pattern.compile(ip_patter);
Matcher m = r.matcher(line);
m.group(0);
如果找到任何地址,则有ip地址,否则它将为null。
如果该行中存在多个IP地址,您可以将它们编入索引m.group(n)。
借助以下链接获得:
答案 2 :(得分:0)
大空间是标签。搜索“\ t”