Я играю CodeWars в Ruby, и я застрял на Ката. Цель состоит в том, чтобы проверить, является ли строка ввода пользователя буквенно-цифровой. (да, это довольно продвинутый Regex)
Инструкция:
At least one character ("" is not valid)
Allowed characters are uppercase / lowercase latin letters and digits from 0 to 9
No whitespaces/underscore
Что я пробовал:
^[a-zA-Z0-9]+$
^(?! !)[a-zA-Z0-9]+$
^((?! !)[a-zA-Z0-9]+)$
Он проходит все тесты, кроме одного, вот сообщение об ошибке:
Value is not what was expected
Я думаю, что Regex, который я использую, удовлетворит все условия, чего мне не хватает?
РЕШЕНИЕ: \A[a-zA-Z0-9]+\z
(и лучше Ruby: ^))
$
=> конец строки
\z
=> конец строки
(то же самое для начала: ^
(строка) и \A
(строка), но не нужно для теста)
Любимый ответ другого игрока:
/\A[A-z\d]+\z/