Pattern.compile,貌似是正则表达式的问题,但是我不会改。。求大神指导

Stringline="14091543758.8.8.81aaaa.bbb.cc";Stringregex="^([\\d]+)[\t]+([\\d]*\\.[\\d]... String line = "1409154375 8.8.8.8 1 aaaa.bbb.cc";
String regex = "^([\\d]+)[ \t]+([\\d]*\\.[\\d]*\\.[\\d]*\\.[\\d]*)[ \t]([\\d]+)[ \t]+(.*)$";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(line);
//String mm[]=line.split("^([\\d]+)[ \t]");
String aa=m.group(4);
System.out.println(aa);

Exception in thread "main" java.lang.IllegalStateException: No match found
at java.util.regex.Matcher.group(Matcher.java:536)
at test.helloword.main(helloword.java:46)
就是把line分成四部分,然后有多少空格是不确定的
展开
 我来答
main_inf
2014-08-28 · TA获得超过1575个赞
知道小有建树答主
回答量:811
采纳率:100%
帮助的人:534万
展开全部
很明确需要用空格来分隔的话,可以考虑用split

final String[] aa = line.split("(\\s)+");

空白符我们一般用\\s
追问
还有验证第一个第三个是数字,的二个是IP地址,第四个就没什么了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式