Який правильний метод перевірки вхідного рядка таким чином, що він може містити лише 0-9, a-z та "."? Перший і останній символи не повинні бути "".
Я зараз використовую;
validates_format_of :lagrange, :with => /[0-9a-z.]/
і спробував безліч варіантів, але, здається, цього не можна зрозуміти.
Відповіді:
0 для відповіді № 1Використовуйте нульову ширину твердження lookahead
/^(?!.*[.]$)(?![.])[a-z0-9.]+$/
---------
+
є кількісним показником, який відповідає 1 до багатьох разів
^
позначає початок і $
позначає кінець рядка / рядка ..
0 для відповіді № 2
Межі слова - ваш друг:
/Ab[a-zd.]*bz/
Розумієте, чому?