Извлечение поля изображения src из простой строки HTML без парсера

1

У меня есть строки html, подобные этим:

<img src="mysrc" width="128" height="92" border="0" alt="alt" /><p><strong>...

Я хотел бы извлечь mysrc. Я не хочу использовать синтаксический анализатор html, поскольку мне просто нужно иметь дело с простыми строками html... есть ли эффективный способ извлечь исходное поле только с помощью строковых/регулярных выражений? Или, может быть, с парсером xml по умолчанию для Android?

  • 0
    Вы пробовали что-нибудь?
  • 0
    Что-то, но до сих пор нет эффективной идеи ..
Теги:

2 ответа

3
Лучший ответ

regex вы можете попробовать: "(?<=<img src=\")[^\"]*"

пример:

@Test
    public void testX() {
        final String s = "<img src=\"mysrc\" width=\"128\" height=\"92\"...";
        final String regex = "(?<=<img src=\")[^\"]*";
        final Pattern p = Pattern.compile(regex);
        final Matcher m = p.matcher(s);
        while (m.find()) {
            System.out.println(m.group());
        }

    }

дам тебе

mysrc
  • 0
    это дает мне "не удачный матч" ..
  • 0
    ваша строка ввода изменилась?
Показать ещё 6 комментариев
1

Вы можете сделать что-то вроде

String text = "<img src=\"mysrc\" width=\"128\" height=\"92\" border=\"0\" alt=\"alt\" /><p><strong>";

text = text.substring(text.indexOf("src=\""));
text = text.substring("src=\"".length());
text = text.substring(0, text.indexOf("\""));
System.out.println(text);

Эффективный, возможно, эффективный, возможно, не так много

Ещё вопросы

Сообщество Overcoder
Наверх
Меню