我正在尝试制作一个Android应用来测试我学到的一些东西,并且我很难尝试从字符串中获取子字符串。我想从纯文本网页中提取子字符串。
编辑:使用Jsoup,效果很好。现在我的问题是子串提取。实际代码:
private class ScrapeNParseURL extends AsyncTask<String, Void, String> {
@Override
protected String doInBackground(String... urls) {
String response = "";
org.jsoup.nodes.Document doc = null;
for (String url : urls) {
try {
doc = Jsoup.connect(url).get();
} catch (IOException exception) {
}
}
try {
response = doc.body().text();
response = response.replace("\n", "").replace("\r", "");
} catch (NullPointerException exception) {
}
String tempStr = null;
try {
tempStr = response.substring(response.indexOf("--- Gold") + 18, response.indexOf("--- Gold") + 25);
} catch (Exception e) {
e.printStackTrace();
}
if (tempStr != null) {
return tempStr;
}
else {
return response;
}
//return response;
}
@Override
protected void onPostExecute(String result) {
textView.setText(result);
}
}
public void updateQuotes(View view) {
textView.setText("Loading...");
ScrapeNParseURL task = new ScrapeNParseURL();
task.execute(new String[] { "http://www.kitco.com/texten/texten.html" });
}
输出是索引18和25之间的子串,这使我认为它没有找到子串。