Проверка ФИО

Тема в разделе "PHP программирование", создана пользователем Alien193, 12 ноя 2010.

Статус темы:
Закрыта.
  1. Alien193

    Alien193 Гость

    Требуется проверка Фамилия Имя Отчества, формат например: "Пупкин Василий Иванович".
    Регулярка не работает хоть убей, хотя должна.
    Код (PHP):
    preg_match('/^([А-ЯЁ]{1})([а-яё]{2,20})([ ]{1})([А-ЯЁ]{1})([а-яё]{2,20})([ ]{1})([А-ЯЁ]{1})([а-яё]{2,20})[^ь]+$/', 'Пупкин Василий Иванович')
    Не проходит проверку и все. Мне кажется регулярка плохо относится к кириллице.
    Подскажите, что не так?
    ps setlocale пробовал, не помогает
     
  2. vital

    vital Больной Компом Детектед

    Регистрация:
    29 янв 2006
    Сообщения:
    2.468
    Симпатии:
    27
    Код (Text):
    $fio='Пупкин Василий Иванович';
    $fio=explode(' ',$fio);
    foreach ($fio as $a) (preg_match('/[а-яА-ЯЁё]+/'),$a);
    Это типа инфа к рамзышлению. А не работает ваша регулярка - потому чт там бред.
     
  3. etc

    etc Гость

    особенно тут -
    , какой Пупкин Василий Иванович ? Он же Пупкин-Попкин Василий Иванович.


    Добавлено: А еще есть и Пупкин-Попкин Василий Иванович ибын ата.
     
  4. vital

    vital Больной Компом Детектед

    Регистрация:
    29 янв 2006
    Сообщения:
    2.468
    Симпатии:
    27
    Пупкин-попкин - всеголишь в регулярку надо добаить дефис.
    В моем примере обработается нормально)
     
  5. etc

    etc Гость

    Да это я не вам, а автору.
    Да и я про то, что какой смысл в этой проверке? ну придут 3 слова и что, какой из этого вывод? мне кажется автор странного хочет.
     
  6. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    а есть еще О'Хара =)
     
  7. vital

    vital Больной Компом Детектед

    Регистрация:
    29 янв 2006
    Сообщения:
    2.468
    Симпатии:
    27
    ну да, мне тоже=)
     
  8. Alien193

    Alien193 Гость

    чего странного, есть форма, в которую нужно ввести ФИО, могут ввести бред, должно быть конкретно три слова, Фамилия Имя и Отчество, каждое должно быть начато с заглавной буквы, а главное бесит, когда в конце вставляют мягкий знак.
    В общем данная мною регулярка работает прекрасно на JS, там нет никакого бреда.
     
  9. Alien193

    Alien193 Гость

    Видимо никто не сталкивался с подобной проблемой?
     
  10. acorn

    acorn PHP Developer

    Регистрация:
    29 авг 2004
    Сообщения:
    599
    Симпатии:
    3
    видимо, никто не хочет за тебя писать регулярку ;)
     
  11. Alien193

    Alien193 Гость

    я не прошу писать регулярку, если вы не видите, она уже готова, она не работает с русскими буквами, что-то с кодировкой не то, я тестил её на php файле с кодировкой utf8, регулярка не работала, чуть ли не убился, а когда файл поменял в кодировку ANSI, то регулярка заработала, а сейчас снова не работает. Так вот я и спрашиваю, может кто сталкивался с подобной проблемой, возможно как-то можно решить проблему принудительным изменением кодировки типа iconv и т.п.
     
  12. acorn

    acorn PHP Developer

    Регистрация:
    29 авг 2004
    Сообщения:
    599
    Симпатии:
    3
    Alien193, у меня ваша регулярка работает, так что копайте глубже в сторону настроек сервера и тп.
     
  13. Alien193

    Alien193 Гость

    Я сильно глубоко копать начал, оказывается клад находился на поверхности.
    Совершил глупую ошибку, имя переменной не ту поставил :(
     
  14. acorn

    acorn PHP Developer

    Регистрация:
    29 авг 2004
    Сообщения:
    599
    Симпатии:
    3
    тогда, думаю, темя себя исчерпала :)
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей