Pull to refresh

Comments 6

Полчаса провозился с 11 и 12, думая что их нужно решать без lookbehind. Потом таки заглянул в решения. Видимо авторы используют Хром, так как движок Firefox не поддерживает lookbehind в регулярках :(

11 вполне решается, кстати
Без заглядывания назад можно решить 11 задачу. Вот такая регулярка "(\s*[\w ]*<[^h].+|\b\w+\b)(?=<\/h\d>)" по-идеи должна отработать в Firefox с результатом 100%.

Спасибо за пример. Хотя такая регулярка и не соответствует духу задания — выбрать всё внутри заголовка. Например, заголовок из двух слов или восклицательный знак в начале заголовка сломает регулярку.

Да, у них в задании учтены не все тест-кейсы.
([\w ]*<[^h].+|[^<>]+)(?=<\/h\d>) — это покроет варианты про которые вы говорите.
А вообще, на практике я бы посоветовал решать эту задачу так: /<h\d[^>]*>(.+?)<\/h\d>/i и вынимать значение из группы.
Я тот, кто подумал, что нужно обязательно обходиться без lookbehind, и мне больно. Я написал мерзкую, длинную регулярку)

Третье решил как f.*D\/
Восьмое — как <h\d.*
Думал, что умный, раз так минималистично выкрутился.
Sign up to leave a comment.

Articles