请问各位:
为什么我的程序老是会打印出三组同样的信息如下:(怎么样才能只打印出一组呢)
http://news.bai-du.com/ns
http://news.aa.com/ns
http://news.bai-du.com/ns
http://news.aa.com/ns
http://news.bai-du.com/ns
http://news.aa.com/ns
我的源代码如下
import java.util.regex.*;public class Test {
String a =
">aa<faaaaa<a href=\"http://news.bai-du.com/ns?cl=2&rn=20&tn=news&word=a\">新闻</a>aaaaaaaa";
Test() {
}
public static void main(String[] args) {
String a =
">aa<faaaaa<a href=\"http://news.bai-du.com/ns?cl=2&rn=20&tn=news&word=a\">新闻</a>aaaaaaaa";
a += ">aa<faaaaa<a href=\"http://news.aa.com/ns?cl=2&rn=20&tn=news&word=a\">新闻</a>aaaaaaaa"; String[] str = a.split("<a");
for(int i = 0; i < str.length; i ++) {
Matcher m1 = Pattern.compile("http://\\w+.\\S+.\\w+/\\w+()").matcher(a);
while(m1.find()) {
for (int j = 0; j<m1.groupCount(); j++) {
System.out.println (m1.group(j));
}
}
}
}
}
为什么我的程序老是会打印出三组同样的信息如下:(怎么样才能只打印出一组呢)
http://news.bai-du.com/ns
http://news.aa.com/ns
http://news.bai-du.com/ns
http://news.aa.com/ns
http://news.bai-du.com/ns
http://news.aa.com/ns
我的源代码如下
import java.util.regex.*;public class Test {
String a =
">aa<faaaaa<a href=\"http://news.bai-du.com/ns?cl=2&rn=20&tn=news&word=a\">新闻</a>aaaaaaaa";
Test() {
}
public static void main(String[] args) {
String a =
">aa<faaaaa<a href=\"http://news.bai-du.com/ns?cl=2&rn=20&tn=news&word=a\">新闻</a>aaaaaaaa";
a += ">aa<faaaaa<a href=\"http://news.aa.com/ns?cl=2&rn=20&tn=news&word=a\">新闻</a>aaaaaaaa"; String[] str = a.split("<a");
for(int i = 0; i < str.length; i ++) {
Matcher m1 = Pattern.compile("http://\\w+.\\S+.\\w+/\\w+()").matcher(a);
while(m1.find()) {
for (int j = 0; j<m1.groupCount(); j++) {
System.out.println (m1.group(j));
}
}
}
}
}
解决方案 »
- Java小程序莫名溢出
- 如何拖拽图形
- 求助
- 【Java初学者问道】请详解Java体系!
- 传值、传地址问题,急!!!
- 请问各位大侠,运行JAVA程序时出现java.lang.NullPointerException错误信息,该如何去解决啊?
- 我今天去一公司面试,他们出了这样一道题,我不会做,请高手指教。
- 关于Tomcat4.0中连接池的问题!
- 请问JAVA如何编写多线程共享一个变量?注意是不同的构造函数做出的线程。
- 求高手指点,io流的读取键盘输入数据的问题
- <<java解惑>>上看到的一个小问题.大家来看看,很有意思的
- 请问用java如何查询windows系统的系统资源,比如cpu使用率,内存大小?
str.length=3 自然打印3遍了
String a =
">aa<faaaaa<a href=\"http://news.bai-du.com/ns?cl=2&rn=20&tn=news&word=a\">新闻</a>aaaaaaaa";
Test() {
}
public static void main(String[] args) {
String a =
">aa<faaaaa<a href=\"http://news.bai-du.com/ns?cl=2&rn=20&tn=news&word=a\">新闻</a>aaaaaaaa";
a += ">aa<faaaaa<a href=\"http://news.aa.com/ns?cl=2&rn=20&tn=news&word=a\">新闻</a>aaaaaaaa";
Matcher m1 = Pattern.compile("http://\\w+.\\S+.\\w+/\\w+()").matcher(a);
while(m1.find()) { for (int j = 0; j<m1.groupCount(); j++) {
System.out.println (m1.group(j));
} }
}
}
自己 做的 都 不 知道 意思 。
还有你知道这3个之间的联系吗?
Matcher m1 = Pattern.compile("http://\\w+.\\S+.\\w+/\\w+()").matcher(a);
m1.groupCount();
m1.group(j));