Я загружаю исходный код веб-сайта с помощью HttpClient, а затем хочу извлечь некоторые данные с помощью регулярных выражений. К сожалению, веб-сайт закодирован в iso-8859-1, что, похоже, вызывает проблемы. Вот пример кода для загрузки веб-сайта:
HttpGet query = new HttpGet(url);
HttpResponse queryResponse = httpClient.execute(query);
String queryText = EntityUtils.toString(queryResponse.getEntity()).replaceAll("\r", " ").replaceAll("\n", " ");
И тогда выражение:
Pattern patter = Pattern.compile("<p class=\"qt\">(.*?)</p>");
Matcher matcher = pattern.matcher(queryText);
while (matcher.find()) // do something
Проблема в том, что в нем отсутствуют некоторые случаи, когда есть специальные символы iso-8859-1. (.*?)
не похоже на них. В чем причина этой проблемы? Как это исправить?