Регулярное выражение для алфавитно-цифровой в Angularjs
Я хочу регулярное выражение для буквенно-цифровых символов в angularJS, я пробовал некоторые регулярные выражения, такие как "(\d[az])", но они позволяют мне вводить только цифры, а также только алфавиты. Но я хочу регулярное выражение, которое не позволит мне войти в них.
Пример:121232, abchfe, abd () *, 42232 ^ 5 $ являются некоторыми примерами неверного ввода.12fUgdf, dGgs1s23 - некоторые допустимые входные данные.
4 ответа
Этот требует по крайней мере один из каждого (аз, AZ и 0-9):
^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])([a-zA-Z0-9]+)$
Вы можете попробовать это. этому выражению соответствует хотя бы один номер, один символ и никаких других специальных символов
^(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]+)$
в угловых может проверить как:
$scope.str = '12fUgdf';
var pattern = new RegExp('^(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]+)$');
$scope.testResult = pattern.test($scope.str);
Если вы хотите вернуть замененный результат, то это будет работать:
var a = 'Test123*** TEST';
var b = a.replace(/[^a-z0-9]/gi,'');
console.log(b);
Это вернуло бы:
Test123TEST
ИЛИ ЖЕ
/^([a-zA-Z0-9 _-]+)$/
Вышеупомянутое регулярное выражение разрешает пробелы в строке и ограничивает специальные символы. Оно допускает только az, AZ, 0-9, пробел, подчеркивание и тире.
Попробуй это: ^(?=.*[a-zA-Z])(?=.*[0-9])[a-zA-Z0-9]+$
dGgs1s23-valid
12fUgdf-valid,
121232-invalid,
abchfe-in valid,
abd()*- invalid,
42232^5$- invalid