我使用 Jsoup 创建了一个基本的网络爬虫,以便从 IMDB 中提取电影信息。但是,当我抓取 Genre 时,我不禁会得到这样的输出:
动作冒险奇幻 2011 年 4 月 27 日(英国)
有没有一种使用substring()的方法,这样当它碰到一个数字时它会带走字符串的其余部分?在这种情况下,数字 27。
谢谢
你想在 27 岁之前得到所有东西吗?
String target = targetString;
int targetLength = target.length();
int index = 0;
for (index = 0; index < targetLength; index++) {
if (Character.isDigit(target.charAt(i))) {
break;
}
}
return target.substring(0, index);
您可以使用该split
方法在第一次出现空格后跟数字时拆分字符串。
String genreInfo = "Action Adventure Fantasy 27 April 2011 (UK)";
String[] tokens = genreInfo.split("\\s\\d");
String genres = tokens[0];
System.out.println(genres);
一个坏主意。IMDB 似乎提供了此处描述的公共 API ,因此抓取是一种糟糕的方法。