#java #регулярные_выражения #строки
Есть входная строка: String input = "2777461-1
Стол: 1 < /td>"; Pattern pattern = Pattern.compile("\\+?(.*)"); Matcher matcher = pattern.matcher(input); while (matcher.find()) { System.out.println(matcher.group()); } необходимо создать из этой строки 3 переменные code = 2777461-1 furniture = Стол count = 1 ошибок нет, но и даже code не удалось получить результат: 2777461-1 Может я ошибаюсь и регулярными выражениями такое не решается?Ответы
Ответ 1
Самый обычный вариант - использовать парсер, к примеру, jsoup. В вашем случае способ получить данные из документа будет выглядеть так: String input = "" + "2777461-1" + " "; Document html = Jsoup.parse(input); String strong = html.body().getElementById("strong").text(); String furniture = html.body().getElementById("furniture").text(); String count = html.body().getElementById("count").text(); Изучайте библиотеку, у нее есть масса способов парсинга html-документов. Ремарка: для доступа к данным проще использовать id, который вы назначаете на нужный тэг. К примеру, если в документе будет 2 тэга , то по id вытащить строку будет оптимальнее (я подправил ваш исходный html, обратите на это внимание).
" + "" + "Стол: " + "1
" + " " + "Подписаться на: Комментарии к сообщению (Atom)
Комментариев нет:
Отправить комментарий