Помогите составить regexp

L
На сайте с 11.07.2009
Offline
6
805

Помогите составить регулярное выражение.

Оно должно пропускать такие выражения по таким шаблонам: "имя_фамилия_отчество" или "имя_фамилия" или "логин", так же такие же выражения, только вместо знака "_" пробел, так же помимо кириллицы возможны латинские буквы и цифры, остальные шаблоны функция должна отбраковывать. Если одним выражением нельзя, то двумя - на случай с пробелами и на случай с символами "_"

Спасибо заранее

[Удален]
#1

if(preg_match("#^[a-z0-9а-я]+(?:\s[a-z0-9а-я]+){0,2}$#ui",$str))

{

echo "ok";

}

для utf8 строк. + это если русск/ингл буквы и цифры возможны для всех полей("имя_фамилия_отчество" или "имя_фамилия" или "логин").

если логин только ингл, то там надо

if(preg_match("#^[a-z0-9]+$#ui",$str))

{

echo "ok";

}

bearman добавил 30.08.2009 в 11:13

нечто такое в общем.

зы регулярку и тп не проверял :)

L
На сайте с 11.07.2009
Offline
6
#2
bearman:
if(preg_match("#^[a-z0-9а-я]+(?:\s[a-z0-9а-я]+){0,2}$#ui",$str))
{
echo "ok";
}

для utf8 строк. + это если русск/ингл буквы и цифры возможны для всех полей("имя_фамилия_отчество" или "имя_фамилия" или "логин").

если логин только ингл, то там надо

if(preg_match("#^[a-z0-9]+$#ui",$str))
{
echo "ok";
}

bearman добавил 30.08.2009 в 11:13
нечто такое в общем.

зы регулярку и тп не проверял :)

Меня интересует именно регулярка:) спасибо, сейчас проверю

lostpassword добавил 30.08.2009 в 11:28

на $str = 'логин456_апирdfgb_uyguyg'; не срабатывает(ок не выводит)

Dreammaker
На сайте с 20.04.2006
Offline
569
#3

lostpassword,


if(preg_match("#^[a-z0-9а-я]+(?:(\s|_)[a-z0-9а-я]+){0,2}$#ui",$str))
{
echo "ok";
}

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий