我正在开发一个通过扫描报告解析的应用程序,所以我使用正则表达式来过滤它们。我的正则表达式是\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\s{1,10}\\d{1,4}\\sms.*
(带有转义斜杠),我过滤的文本看起来像
172.20.4.3 0 ms k2g-dhcp.somedomain.jp [n/s] 00:1C:C4:5B:12:F2 [n/a]
172.20.4.4 [n/a] [n/s] [n/s] [n/s]
我已经测试了给定的正则表达式并且它正常匹配,但在 Java 中它只是不匹配。这是我的代码:
Pattern pat = Pattern.compile("\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\s{1,10}\\d{1,4}\\sms.*", Pattern.CASE_INSENSITIVE);
Matcher mat = pat.matcher(data);
while(mat.find())
{
System.out.println("Found matches!"); // Code never gets here
}
System.out.println("Done!");