如何从 java 中的 csv 文件中提取 url
How to extract url from my csv file in java
提前感谢您的帮助。
我有一个 CSV 文件,其中包含 url 个不同的网页。我想提取 url,下面是我尝试过的代码,但是它 returns 重复结果,没有返回所有 url。你能给我一些指导吗?
CSV 文件是这样的:
[123,r5ttr, , , ,1224,http://www.example.com][244,rtyi, , ,3467,http://www.sample.com]
等等。
Pattern p = Pattern.compile("\bhttp.*?\]");
BufferedReader brd = new BufferedReader(new FileReader("1234.CSV"));
while (brd.ready()) {
String st = brd.readLine();
Matcher m = p.matcher(st);
while (m.find()) {
System.out.println(m.group());
}
}
我不会在这里使用正则表达式。只需找到最后一个逗号索引,该行的其余部分就是您的 url。它工作得更快。
代码看起来像这样(抱歉,我附近没有 java 环境,所以请将其视为未调试的伪代码:)
try (BufferedReader br = new BufferedReader(new FileReader("1234.CSV"))) {
String csvLine;
while ((csvLine = br.readLine()) != null) {
int urlStart = csvLine.length();
while(true) if(csvLine.charAt(--urlStart) == ',') break;
String theUrl = csvLine.substring(urlStart + 1, csvLine.length());
System.out.println(theUrl);
}
}
提前感谢您的帮助。
我有一个 CSV 文件,其中包含 url 个不同的网页。我想提取 url,下面是我尝试过的代码,但是它 returns 重复结果,没有返回所有 url。你能给我一些指导吗?
CSV 文件是这样的:
[123,r5ttr, , , ,1224,http://www.example.com][244,rtyi, , ,3467,http://www.sample.com]
等等。
Pattern p = Pattern.compile("\bhttp.*?\]");
BufferedReader brd = new BufferedReader(new FileReader("1234.CSV"));
while (brd.ready()) {
String st = brd.readLine();
Matcher m = p.matcher(st);
while (m.find()) {
System.out.println(m.group());
}
}
我不会在这里使用正则表达式。只需找到最后一个逗号索引,该行的其余部分就是您的 url。它工作得更快。
代码看起来像这样(抱歉,我附近没有 java 环境,所以请将其视为未调试的伪代码:)
try (BufferedReader br = new BufferedReader(new FileReader("1234.CSV"))) {
String csvLine;
while ((csvLine = br.readLine()) != null) {
int urlStart = csvLine.length();
while(true) if(csvLine.charAt(--urlStart) == ',') break;
String theUrl = csvLine.substring(urlStart + 1, csvLine.length());
System.out.println(theUrl);
}
}