2016-12-19 6 views
2

Я использую angularjs. Я хочу использовать проверку для моего поля имени. Я новичок в выражениях регулярных выражений. Я хочу, чтобы первая буква имени не была специальным символом. Например, My $ Repo должен быть действительным и $ MyRepo недействителен.Regex, чтобы проверить, что первая буква слова в поле ввода не является специальным символом

Я использую ng-шаблон для проверки поля имени. Какое выражение регулярного выражения я должен использовать? Ценю вашу помощь.

ответ

2

Вы можете использовать ^\w.*$, что означает «строку, по крайней мере, одного символа, с начальным символом, который представляет собой письмо от латинского алфавита, цифры или подчеркивания.

Demo.

+0

наряду с предоставленной валидацией (с начальным символом, который является буквой латинского алфавита, цифрой или подчеркиванием), мне нужно разрешить некоторые специальные символы между или концом, отличным от /? \% *: | "<.> Оцените свою помощь. – shaaa

+0

Я пробовал с помощью следующего регулярного выражения^\ w [^ \ <.>? *: \\ "\/|% \] * $. Пожалуйста, дайте мне знать, что это правильный путь или какие-либо изменения. – shaaa

+1

@shaaa Это выглядит правильно, все, что вам нужно, это убедиться, что все ваши специальные символы правильно экранированы. – dasblinkenlight

-1

ragex для специальных символов в начале является /^[[email protected]#%^&*(\-)_+=-\][{}|';,./?><:"]/g

1

есть много «специальных» символов, но мало «неспециальный», я бы указать, что это допускается:

^[a-zA-Z].* 

Это означает «любая латинская буква, за которой следует что-либо».

Чтобы буквы из любого алфавита:

^\p{L}.* 

Это означает, что «любое письмо из любого алфавита, затем что-нибудь».