Я пытаюсь создать регулярное выражение для проверки имен пользователей по этим критериям:
- Только содержит буквенно-цифровые символы, подчеркивание и точка.
- Подчеркивание и точка не могут быть в конце или
начало имени пользователя (например,
_username/username_/.username/username.). - Подчеркивание и точка не могут быть рядом друг с другом (например,
user_.name). - Подчеркивание или точка не могут использоваться несколько раз подряд (например,
user__name/user..name). - Количество символов должно быть от 8 до 20.
Это то, что я сделал до сих пор; это звучит, что он применяет все критерии, но пятое правило. Я не знаю, как добавить к этому 5-е правило:
^[a-zA-Z0-9]+([._]?[a-zA-Z0-9]+)*$