Comments 35
Вот такое уже было habrahabr.ru/post/175847/
Комментариев нет, потому что все увлеклись прохождением?
Notice! In order to save your progress you have to login with Facebook.
Уроды. Ну что ж, придётся пройти всё за один присест.
Кто нибудь знает что делает регепс /+ все тестеры ругаются говорят ошибка. В документации нигде не нашёл.
Один или больше слэшей?
один или больше слешей — \/+ а это какаято неизведанность. Даже немножко обидно что пройдено все кроме одного туториала…
Прямой слэш не является спец-символом в регулярках как таковых. Просто он часто используется как указатель границ регулярки (в Перле или JS) — тогда да, его надо экранировать. Но это лишь частный случай. Например, в том же Перле можно задать границы любым другим символом, тогда прямые слэши можно уже не экранировать, чем народ часто пользуется, когда надо мэтчить юниксовые пути или урлы со слэшами.
>new RegExp("/+").test("///")
true
Для проверки используется JavaScript RegEx
Я не спорю, TIMTOWTDI, но developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp
Указанная мной нотация может и не самая правильная, но вполне рабочая:
Что эквивалентно
Указанная мной нотация может и не самая правильная, но вполне рабочая:
/\/+/.test('//'); // true
Что эквивалентно
RegExp(/\/+/).test('//'); // true
RegExp('/+').test('//'); // true
Просто надо отличать особенности конкретной реализации от формального определения. Кроссворды используют стандартные регулярки, в которых прямой слэш никогда не являлся спецсимволом. Если бы он был спецсимволом и требовал экранирования, он бы требовал его всегда, независимо от того, в каком синтаксисе создаётся объект RegExp. А здесь именно особенность одного конкретного варианта записи в синтаксисе JavaScript. Точно так же, как в коде
RegExp('\'+').test("''''");
мы вынуждены экранировать кавычку, потому что она является синтаксическим элементом языка JavaScript. Но это же не делает её спецсимволом регулярок./ — delimiter, + — modifier, поэтому /+ будет выдавать ошибку.
А вот \/+ в регексе, например так /\/+/ — будет означать 1 и больше слэшей подряд.
А вот \/+ в регексе, например так /\/+/ — будет означать 1 и больше слэшей подряд.
Кто-нибудь может объяснить, как решить вторую клетку из regexcrossword.com/challenges/volapuk/puzzles/2?
Там нужно подставить цифру, которая будет удовлетворять двум правилам:
Либо я чего-то недопонял.
Там нужно подставить цифру, которая будет удовлетворять двум правилам:
[0-3]
и [^2013]
, что, по сути, есть противоречие. Либо я чего-то недопонял.
Experienced 4 доставляет =)
Некоторые ответы можно «угадать» не по регуляркам, а по полным словам, которые составляют символы в клетках. )
Прошлый кроссворд тоже прошли с удовольствием. Конечно подобные головоломки интересны!
Прошлый кроссворд тоже прошли с удовольствием. Конечно подобные головоломки интересны!
Улыбнул Double Cross / The Lektor Device:
Скрытый текст
FROM RUSSIA WITH LOVE
А я что-то не пойму, по-моему, тут неоднозначность. Или меня глючит? Вроде бы, всем четырём регекспам соответствует, но валидацию «неправильный» вариант не проходит. Конечно, фраза при этом перестаёт быть корректным английским текстом, но требования осмысленности в условиях нет.
Альтернативное решение
Пятая строка, вторая колонка: может быть буква I, а может быть T.


Кажется, что кроссворды с реальными словами или фразами — не самая удачная идея для таких головоломок. Т.к. можно решить не вскрывая все регекспы.
Я в тупике. Что не так?
Скриншот

del
Sign up to leave a comment.
Кроссворд из RegEx