Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 1 из 1
  1. #1
    Аватар для Saibot
    Пользователь

    Статус
    Оффлайн
    Регистрация
    21.08.2016
    Сообщений
    58
    Репутация:
    24 ±

    IsValidEmail - Проверка Email на валидность

    Много кто использует регулярное выражение для проверки Email адреса на валидность.
    Например я, ни хотел бы подключать сторонний плагин ради того, чтобы проверить - правильно ли игрок написали Email.
    Данная функция, проверят строку на латинские буквы, а также на символ @.
    До символа @ - Вы сможете ввести любые числа, латинские буквы, а так-же пробел и точки.
    После символа @ - Вы не сможете вводить другие символы, кроме одной точки.​

    PHP код:
    stock IsValidEmail(const string[])
    {
        new 
    find_@,
            
    dots_after_@,
            
    num_repeating_points;

        new 
    ic;

        while((
    string[i++]) != '\0')
        {
            switch(
    c)
            {
                case 
    'A'..'Z''a'..'z''-''_''0'..'9':
                {
                    
    num_repeating_points 0;
                    continue;
                }
                case 
    '@':
                {
                    if(
    find_@ || == 1) return 0;
                    
    find_@ = 1;
                }
                case 
    '.':
                {
                    if(!
    find_@)
                    {
                        if(
    num_repeating_points) return 0;
                        
    num_repeating_points++;
                        continue;
                    }
                    if(
    dots_after_@) return 0;
                    
    dots_after_@ = 1;
                }
                default: return 
    0;
            }
        }
        return 
    1;



    Данная функция возвращает:
    • 0 - Если найдены запрещенные символы
    • 1 - Если запрещенные символы не найдены


    Пример использования:
    PHP код:
    if(IsValidEmail(/*строка*/) == 1) print("Нет запрещенных символов");
    else print(
    "Найдены запрещенные символы"); 


    Автор: Saibot
    Оптимизировал: DeimoS
    Последний раз редактировалось Saibot; 23.08.2020 в 20:20.

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •