У меня есть группа по форме. И регулярное выражение для проверки имени. Ограничения для поля ввода имени следующие
- требуемый.
- является буквенно-цифровым.
- начинается с алфавитов.
- не содержит никаких специальных символов.
Мое регулярное выражение(^[a-zA-Z][a-zA-Z0-9]*$
) работает нормально при проверке онлайн.
Но с angular FormControl отображается действительным для всех строк.
Может ли кто-нибудь объяснить, почему существуют такие расхождения между результатами с помощью углового валидатора.pattern() и движка js.
Я попробовал следующее безрезультатно (все это предложения из ответов stackoverflow):
Validators.pattern(/^[a-zA-Z][a-zA-Z0-9]*$/)
Validators.pattern('[a-zA-Z][a-zA-Z0-9]*')
const nameRegex='^[a-zA-Z][a-zA-Z0-9]*$'
this.signupForm = this.formBuilder.group({
name: ['', Validators.required, Validators.pattern(nameRegex)],
email: ['', [Validators.required, Validators.pattern(emailRegex)]],
password: ['', Validators.compose([Validators.required, Validators.minLength(6)])],
c_password: ['', Validators.compose([Validators.required, Validators.minLength(6)])]