java正则表达式匹配器

时间:2010-03-06 19:44:45

标签: java regex matcher

 codes = new Vector<String>();
 titles = new Vector<String>();
 urls = new Vector<String>();
 lecturers = new Vector<String>();
 while (m.find()) {
    String courseCode = m.group(1);
    String courseTitle = m.group(2);
    String courseURL = url;
    String lecturerName = m.group(4);
    codes.add(courseCode);
    titles.add(courseTitle);
    urls.add(courseURL);
    lecturers.add(lecturerName);
 }

我正在尝试从10个网站获取数据,如果您只打印出每个组,它可以正常工作,例如:    的System.out.println(courseCode); 打印出10个courseCodes的列表,但是当我尝试将它们添加到这些向量中时,它只添加最后一个courseCode而不是每个。所以每个向量应该有10个元素,但它们只有1个。有没有办法喜欢迭代匹配?

1 个答案:

答案 0 :(得分:1)

也许正则表达式只匹配一次而不是10次。如果计算迭代while循环的频率,可以检查这个。最简单的方法是定义一个帮助变量int i=0;并使用i++;在循环内增加此值(并在循环内部或外部打印)。同时在while循环中检查带有list.size()的向量的大小,看看大小是如何实际增长的。