preg_match PHP проверяет имя пользователя - PullRequest
1 голос
/ 21 декабря 2011

Как проверить имя пользователя с помощью php

Мои правила:

Имя пользователя может содержать только буквы, цифры и 1 подчеркивание.

Это мой текущий preg_match

preg_match('/^[a-zA-Z0-9][_]{1}[a-zA-Z0-9]+$/',$_POST['uname'])

1 Ответ

2 голосов
/ 21 декабря 2011

Это должно сделать это:

/^[a-zA-Z0-9]*_?[a-zA-Z0-9]*$/

Имейте в виду, что класс персонажа одного предмета является избыточным.Напишите атом исключительно вместо этого.И {1} является еще одним серьезно избыточным квантификатором.

/[_]{1}/

- это то же самое, что и

/_/

Редактировать:

На основе новых ограничений иВ полезном комментарии Криса это, кажется, более подходящее регулярное выражение:

/^[a-zA-Z0-9]+_?[a-zA-Z0-9]+$/D

Это имя пользователя, состоящее как минимум из двух символов, не заканчивающееся или начинающееся с необязательного подчеркивания, и без символов перевода строки в конце.

...