Мне нужно регулярное выражение, которое терпит неудачу в каждом символе за пределами [a-zA-Z0-9_] или если строка состоит только из чисел - PullRequest
2 голосов
/ 01 ноября 2010

Следующий код JavaScript возвращает false, если строка содержит только цифры или символы, отличные от [a-zA-Z0-9 _].

function validate(n) {
    return (!/^[\d]+$/.test(n) && /^[\w]+$/.test(n));
}

Возможно ли сделать это только с помощью регулярного выражения?Я хочу использовать атрибуты шаблона во входном теге для проверки.

<input type="text" pattern="...">

Редактировать: я также хочу, чтобы он был от 5 до 20 символов

1 Ответ

3 голосов
/ 01 ноября 2010

Как это: ^[a-zA-Z0-9_]*[a-zA-Z_]+[a-zA-Z0-9_]*$

Это регулярное выражение соответствует нулю или более символов, включая цифры, по крайней мере один символ, который не число, за которым следует еще один ноль или более символов, включая цифры.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...