Jump to content
Sign in to follow this  
rhjirftyjn

регулярное выражение для Имени и Отчества

Recommended Posts

Всем привет.

Хочу чтобы в поле Имя, вводилось имя и отчество.

Причем в обязательном порядке. Для отправки посылок отчество нужно.

помогите составить регулярное выражение для проверки введенной информации.

отдельное поле не хочу. 

 

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Остап Сулейман Берта Мария Бендер бей

Вполне себе имя отчество фамилия

Отделить Имя от Отчества - самый простой способ - проверить наличие пробела между словами

1. сначала удаляем все множественные пробелы

2 Затем разбиваем на элементы массива по пробелу

Номер телефона

^((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}$

Ну а что не было грустно

http://habrahabr.ru/post/110731/

Share this post


Link to post
Share on other sites

В принципе, для проверки ФИО достаточно убедиться, что есть хотя бы три слова, разделённые 2-мя пробелами. Если больше - тоже пропускать. Т.е. что-то вроде /^([a-zA-Zа-яА-Я]+\s+){3,}$/ (только один пробел вручную прилепить в конец перед проверкой).

К буквам можно ещё и дефис добавить - на случай каких-либо "Иван Ибн-хасан Альберович"-ей. Цифры уже наверное перебором будут.

Share this post


Link to post
Share on other sites

и где это все можно отредактировать? или прописать?

Share this post


Link to post
Share on other sites

и где это все можно отредактировать? или прописать?

в настройке полей модуля simple

Share this post


Link to post
Share on other sites

В принципе, для проверки ФИО достаточно убедиться, что есть хотя бы три слова, разделённые 2-мя пробелами. Если больше - тоже пропускать. Т.е. что-то вроде /^([a-zA-Zа-яА-Я]+\s+){3,}$/ (только один пробел вручную прилепить в конец перед проверкой).

К буквам можно ещё и дефис добавить - на случай каких-либо "Иван Ибн-хасан Альберович"-ей. Цифры уже наверное перебором будут.

пробел после последнего слэша? или доллара.

Share this post


Link to post
Share on other sites

Регулярка для ФИО - полная ерунда. Особливо когда у субъекта отчества нет вообще)) Жизнь намного сложнее, оставьте поле в покое. Как разраб промышленной системы с миллионами "фио" вам говорю.

Share this post


Link to post
Share on other sites

Регулярка для ФИО - полная ерунда. Особливо когда у субъекта отчества нет вообще)) Жизнь намного сложнее, оставьте поле в покое. Как разраб промышленной системы с миллионами "фио" вам говорю.

 

Правильно.

От вымышленного Остапа к реальной личности:

 

Наиля Вагиф Кызы Аскер-Заде

 

или так

Аскер-Заде Наиля Вагиф Кызы

 

 

Угадайте где тут отчество?

Share this post


Link to post
Share on other sites

Угадайте где тут отчество?

Не усложняйте задачу. У топик-стартера не вижу требования угадывать отчество. Лишь отдетектить наличие ФИО в одном поле, не прибегая к отдельным полям Ф + И + О.

Share this post


Link to post
Share on other sites

прописываю выражение так: /^[А-Яа-я]{2,20}$/

но принимает только иВАН, вместо Иван... в чем ошибка??

Share this post


Link to post
Share on other sites

Не усложняйте задачу. У топик-стартера не вижу требования угадывать отчество. Лишь отдетектить наличие ФИО в одном поле, не прибегая к отдельным полям Ф + И + О.

Когда задача слегка оторвана от реальной жизни, не грех об этом топик-стартеру и сообщить. Хотя бы в качестве ремарки. В РФ - поле "отчество" является обязательным лишь для субъектов, его имеющих.

На досуге: http://habrahabr.ru/post/92054/

Share this post


Link to post
Share on other sites

прописываю выражение так: /^[А-Яа-я]{2,20}$/

но принимает только иВАН, вместо Иван... в чем ошибка??

В чем то другом, регулярное выражение в нотации PCRE составлено верно.

Share this post


Link to post
Share on other sites

прописываю выражение так: /^[А-Яа-я]{2,20}$/

но принимает только иВАН, вместо Иван... в чем ошибка??

не обманывайте

http://regexpr.ru/?pattern=%2F%5E%5B%C0-%DF%E0-%FF%5D%7B2%2C20%7D%24%2F&subject=%C8%E2%E0%ED

Share this post


Link to post
Share on other sites

В чем то другом, регулярное выражение в нотации PCRE составлено верно.

 вот и я не понимаю... составлено верно.. а на сайте не принимает другие значения кроме Иван. аННА :ugeek:

Share this post


Link to post
Share on other sites

не обманывайте

 

там и проверяла выражение.. но на сайте пишет не верно...

пока данную ошибку решила так:

 /^[А-Я]+[а-я]{2,20}$/ 
  но из-за плохих знаний не понимаю разницы Edited by Ketty83

Share this post


Link to post
Share on other sites

/^[А-Яа-я]{2,20}$/u

Share this post


Link to post
Share on other sites

Внимание регулярное выражение содержит ошибки:

preg_match_all(): Compilation failed: invalid UTF-8 string at offset 2

а на сайте работает... странно

Edited by Ketty83

Share this post


Link to post
Share on other sites

/^[А-Яа-я]{2,20}$/u

а как правильно сделать для Имя Отчество.. не могу добавить 1 пробел

Share this post


Link to post
Share on other sites

/^[А-Яа-я]{2,20}\s+[А-Яа-я]{2,20}$/u

Share this post


Link to post
Share on other sites

Если один пробел, то просто \s без квантификатора

Share this post


Link to post
Share on other sites

Ребята! спасибо всем огромное

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.