Главная / Регулярные выражения Perl и их применение / В переменной $_ находится HTML-страница. Надо проверить, есть ли у этой страницы часть head, и если есть, то есть ли внутри контейнера <head> </head> тег <base href="…">. Если он есть, то переменной $base надо присвоить этот URL из части

В переменной $_ находится HTML-страница. Надо проверить, есть ли у этой страницы часть head, и если есть, то есть ли внутри контейнера <head> </head> тег <base href="…">. Если он есть, то переменной $base надо присвоить этот URL из части head документа. Если в head нет тега base, то ничего делать не надо. Пример текста страницы:<html> <head> <title>Title</title> <base href="http://www.intuit.ru/download"> </head> … Какие операторы делают это корректно, учитывая разное оформление тегов веб-мастерами?

вопрос

Правильный ответ:

$base=$1 if m#<head[^>]*>.*<base\s+href\s*=\s*['"]?([^'">\s]+)#i
$base=$1 if m#<head[^>]*>(?>(?!<base|</head).)+<base\s+href\s*=\s*['"]?([^'">\s]+)#is
$base=$1 if m#<head[^>]*>(?>(?!<base).)+<base\s+href\s*=\s*['"]?([^'">\s]+)#is
Сложность вопроса
95
Сложность курса: Регулярные выражения Perl и их применение
87
Оценить вопрос
Очень сложно
Сложно
Средне
Легко
Очень легко
Комментарии:
Аноним
Если бы не опубликованные подсказки - я бы не справился c этими тестами intuit.
30 апр 2018
Аноним
Спасибо за гдз по интуит.
17 сен 2017
Оставить комментарий
Другие ответы на вопросы из темы программирование интуит.