Я пытаюсь использовать регулярные выражения для декодирования некоторого HTML-кода, получаемого с веб-страницы.Я хочу преобразовать некоторые теги <iframe>
в ссылки.
Код, который я использую, должен работать нормально в зависимости от меня и некоторых тестовых программ, однако, когда я запускаю его на своем устройстве Android, он не находит совпадений.(где это происходит в тестовых программах).
Я использую следующее регулярное выражение (имейте в виду, что я пишу код на Java, поэтому мне также нужно экранировать escape-символ):
String regularExpression = "<iframe.+?src=\\\\?(\\S+).+?(><\\\\?/iframe>|\\\\?/>)";
String replacement = "<a href=$1>Youtube</a>";
input.replaceAll(regularExpression, replacement);
Из того, что я могу из этого извлечь, следует заменить все теги <iframe>
, имеющие атрибут src
, на гиперссылки с этим источником.Однако, когда я передаю следующий ввод, он ничего не делает с ним:
<iframe src=\"http:\/\/www.youtube.com\/embed\/s6b33PTbGxk\" frameborder=\"0\" width=\"500\" height=\"284\"><\/iframe>
Ответ - это просто тот же самый текст, только с удаленными escape-символами:
<iframe src="http://www.youtube.com/embed/s6b33PTbGxk" frameborder="0" width="500" height="284"></iframe>
Может кто-нибудь помочь мне и объяснить, что я делаю не так?Я только начал изучать регулярные выражения вчера, но я просто не могу понять, почему это не работает.