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(类(class)代码); 打印出 10 个 courseCode 的列表,但是当我尝试将它们添加到这些 vector 中时,它只添加最后一个 courseCode,而不是每一个。所以每个 vector 应该有大约 10 个元素,但它们只有 1 个。有没有办法像迭代匹配一样?
最佳答案
也许正则表达式只匹配一次而不是 10 次。如果你计算一下 while 循环的迭代次数,你可以检查这一点。最简单的方法是定义一个帮助变量 int i=0;
并在循环内使用 i++;
增加该值(并在循环内部或外部打印它)。还要在 while 循环内使用 list.size()
检查 vector 的大小,以查看大小实际增长情况。
关于java 正则表达式匹配器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2393866/