Мне нужно определить, содержит ли строка два или более последовательных альфа-символа. Два или более [a-zA-Z]
рядом. Пример:
"ab" -> valid
"a1" -> invalid
"a b" -> invalid
"a"-> invalid
"a ab" -> valid
"11" -> invalid
Это должно помочь:
[a-zA-Z]{2,}
{2}
без запятой тоже должно работать, правда?Лично (как новичок) я использовал:
[0-9][0-9]+.
Но тот, что от Саймона, намного лучше! = D
источник
[a-zA-Z] {2,} не работает для двух или более одинаковых последовательных символов. Для этого вы должны захватить любого персонажа, а затем повторить захват следующим образом:
(.) \ 1
Круглые скобки фиксируют расширение. который представляет любой символ, а \ 1 является результатом захвата, в основном ища последовательное повторение этого символа. Если вы хотите уточнить, какие символы, которые вы хотите найти, идентичны друг другу, просто замените «любой символ» классом символов ...
([a-zA-Z]) \ 1
Находит последовательно повторяющиеся буквы нижнего или верхнего регистра. Соответствует «abbc123», а не «abc1223». Чтобы разрешить пробел между ними (например, ab), включите необязательный пробел в регулярное выражение между захваченным символом и повторением ...
([az] AZ]) \ s? \ 1
источник
Я почти уверен, что вы можете просто использовать [Az] вместо [a-zA-Z], чтобы получить альфа-символы в нижнем и верхнем регистре http://www.w3schools.com/jsref/jsref_obj_regexp.asp
источник
[A-z]
совпадает больше, чем буквы. В частности, он также соответствует квадратным скобкам, обратным косым чертам, символам вставки, подчеркиванию и обратным кавычкам.Z
иa
, следовательно, будут (ошибочно) включены в такой шаблон. Вторая рекомендация: не используйте w3schools! В нем много такой тонко плохой информации.[65-90]
будет соответствовать5
-9
(что также включает6
) и0
!