Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Требуется по введенному с клавиатуры адресу электр 
:(
    Опции темы
Demiann
Дата 25.2.2010, 10:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 23.2.2010

Репутация: нет
Всего: нет



Предположим, что адрес электронной почты должен иметь вид <имя пользователя>@<домен>, где <имя пользователя> -- строка, состоящая из символов 'A'..'Z', 'a'..'z', '0'..'9' длиной не менее 1 символа. Домен -- это строка, состоящая из символов 'A'..'Z', 'a'..'z', '0'..'9' и '.' (точка), причем точка в домене обязательно должна быть, но не может стоять в начале и конце домена. Требуется по введенному с клавиатуры адресу электронной почты проверить его правильность.
PM MAIL   Вверх
Demiann
Дата 25.2.2010, 11:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 23.2.2010

Репутация: нет
Всего: нет



Помогите решить эту задачу!
PM MAIL   Вверх
jhonyxakep
Дата 25.2.2010, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Divide Et Impera
**


Профиль
Группа: Участник
Сообщений: 983
Регистрация: 7.4.2009
Где: Что, Когда?

Репутация: 1
Всего: 8



Цитата(Demiann @  25.2.2010,  11:02 Найти цитируемый пост)
Помогите решить эту задачу!

Ну во 1 для этого есть центр помощи (где то в самом низу списка форумов), во 2 
Цитата(Demiann @  25.2.2010,  10:44 Найти цитируемый пост)
Требуется по введенному с клавиатуры адресу электронной почты проверить его правильность.


Подсказка: (как делал бы я)
Занес весь адрес в массив char, проверял бы каждый символ по правилу 
Цитата(Demiann @  25.2.2010,  10:44 Найти цитируемый пост)
строка, состоящая из символов 'A'..'Z', 'a'..'z', '0'..'9' длиной не менее 1 символа

те до знака @,

после знака искал первым символом "." , если нет, то проверил бы по правилу 


Цитата(Demiann @  25.2.2010,  10:44 Найти цитируемый пост)
'A'..'Z', 'a'..'z', '0'..'9'


и так пока не наступит ".", после точки, проверял существуют ли символы соответствующие с правилом

Цитата(Demiann @  25.2.2010,  10:44 Найти цитируемый пост)
'A'..'Z', 'a'..'z', '0'..'9' 



ЗЫ У меня всегда извращенная точка мышления, строго не судите...smile
PM MAIL ICQ   Вверх
Christoph
Дата 25.2.2010, 11:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 667
Регистрация: 23.1.2008
Где: Харьков

Репутация: нет
Всего: 11



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


--------------------
user posted image
PM MAIL ICQ   Вверх
jhonyxakep
Дата 25.2.2010, 11:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Divide Et Impera
**


Профиль
Группа: Участник
Сообщений: 983
Регистрация: 7.4.2009
Где: Что, Когда?

Репутация: 1
Всего: 8



Цитата(Christoph @  25.2.2010,  11:39 Найти цитируемый пост)
про регулярные выражения почитай и попробуй сделать что то сам

 smile Оно того не стоит, задача на 5 минут решения.
PM MAIL ICQ   Вверх
borisbn
Дата 25.2.2010, 12:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 21
Всего: 135



Цитата(jhonyxakep @  25.2.2010,  11:40 Найти цитируемый пост)
Оно того не стоит, задача на 5 минут решения


Что лучше: подарить рыбу или научить её ловить ?

IMHO, научиться регулярным выражениям по простому примеру с e-mail адресом, а потом применять их в более сложных задачах - это стОящая задача.


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
Demiann
Дата 25.2.2010, 13:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 23.2.2010

Репутация: нет
Всего: нет



Спасибо..... пробую!
PM MAIL   Вверх
Demiann
Дата 25.2.2010, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 23.2.2010

Репутация: нет
Всего: нет



Все равно не получилось!
PM MAIL   Вверх
Christoph
Дата 25.2.2010, 23:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 667
Регистрация: 23.1.2008
Где: Харьков

Репутация: нет
Всего: 11



покажи что не получилось? 


--------------------
user posted image
PM MAIL ICQ   Вверх
Ozerich
Дата 26.2.2010, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 164
Регистрация: 2.8.2009
Где: Минск, Беларусь

Репутация: 4
Всего: 5



Если регулярные выражения не осилил то можно сделать так

Код

bool correctChar(char ch)
{
    if(ch >= 'a' && ch <= 'z')
  return true;
    if(ch >= 'A' && ch <= 'Z')
  return true;
    if(ch >= '0' && ch <= '9')
  return true;
    return false;
}

bool checkEmail(string s)
{
    int posA = s.find("@");  
    int i;
    if(posA < 0) 
  return false;
    for(i = 0; i < posA; i++)
  if(!correctChar(s[i]))
    return false;
    s.erase(s.begin(), s.begin() + s.find("@") + 1);
    bool dot = false;
    for(i = 0; i < s.size(); i++)
    {
  if(s[i] == '.')
  {
    if(dot || i == 0 || i == s.size() - 1)
    return false;
    else dot = true;
  }
  else if (!correctChar(s[i]))
    return false;
    }
    if(!dot)
  return false;
    return true;
}



Это сообщение отредактировал(а) Ozerich - 26.2.2010, 12:46
--------------------
C++(STL) / DHTML(CSS) / Javascript / PHP  Developer
PM MAIL ICQ Skype   Вверх
jhonyxakep
Дата 26.2.2010, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Divide Et Impera
**


Профиль
Группа: Участник
Сообщений: 983
Регистрация: 7.4.2009
Где: Что, Когда?

Репутация: 1
Всего: 8



Цитата(Ozerich @  26.2.2010,  12:46 Найти цитируемый пост)
if(ch >= 'a' && ch <= 'z')

 smile А я и не знал что так можно делать...


Ozerich, в прочем вот этот код есть самое то.


Demiann, старайся разбивать задачи на этапы, попробуй решить задачу сам, без компьютера, а решение сконвертируй в код smile так оно и бывает.)
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

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

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0536 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.