2011-12-11 2 views
12

У меня есть это регулярное выражение: /[^a-zA-Z0-9_-]/Regular Expression (первый символ должен быть аз)

То, что я хочу, чтобы добавить в рассмотренном выше, является:

  • первый символ может быть только a-zA-Z

Как Я мог бы сделать это регулярное выражение?

+1

На каком языке? Что должно соответствовать * rest * регулярного выражения? Ваше текущее регулярное выражение будет соответствовать любой строке, содержащей хотя бы один символ, который не является буквенно-цифровым или подчеркивающим или дефис: это то, что вы намеревались? – Johnsyweb

+0

это будет использоваться для имени пользователя сайта, первый символ должен быть выбран из a-zA-Z, и пользователь может использовать a-zA-Z, 0-9, _ и - –

ответ

26

попробовать что-то вроде этого:

^[a-zA-Z][a-zA-Z0-9.,$;]+$ 

Объяснение:

^    Start of line/string. 
[a-zA-Z]   Character is in a-z or A-Z. 
[a-zA-Z0-9.,$;] Alphanumeric or `.` or `,` or `$` or `;`. 
+    One or more of the previous token (change to * for zero or more). 
$    End of line/string. 
+3

. Это совсем другое, чем обычное выражение в вопросе ('' 'находится внутри' [] ', а не до него). – Johnsyweb

+1

... но, очевидно, было то, что требовалось! Отлично сработано! – Johnsyweb

6

Я думаю, что это также будет работать

^[a-zA-Z].* 

Если вы хотите проверить только первый символ как алфавитный а остальная часть строки может быть любой.