За последние 24 часа нас посетили 18038 программистов и 1622 робота. Сейчас ищут 1257 программистов ...

Самая простая регулярка в мире

Тема в разделе "Регулярные выражения", создана пользователем oksana, 28 июл 2012.

  1. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    Всем привет =)

    застряла на регулярке, нужно чтобы проходили только латинские буквы, цифры и -
    но ввожу + = проходит

    Код (Text):
    1.  
    2. if (!preg_match("/([A-Za-z0-9-]+)/", $login))
    3. {
    4. echo "error";
    5. }
    где ошибка?
     
  2. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    Код (Text):
    1.  
    2. $pattern = '/^[A-Za-z\d\-]+$/';
    3. $login = 'Azq12-';
    4.  
    5. if (!preg_match($pattern, $login))
    6. {
    7. echo "error";
    8. }
     
  3. oksana

    oksana Активный пользователь

    С нами с:
    16 мар 2012
    Сообщения:
    221
    Симпатии:
    0
    Спасибо =)
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    почеркивание тоже не забываем =)
     
  5. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    Код (PHP):
    1. $pattern='/^[a-zA-Z0-9-_.]+$/'; 
     
  6. Doglexx

    Doglexx Активный пользователь

    С нами с:
    20 май 2008
    Сообщения:
    25
    Симпатии:
    0
    А почему просто не использовать (если с подчёркиванием)?
    Код (PHP):
    1. <span class="syntaxdefault">$pattern </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxstring">'/^[\w-]+$/'</span><span class="syntaxkeyword">;</span><span class="syntaxdefault"> </span>