preg_match() erkennt "?" nicht

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • preg_match() erkennt "?" nicht

    Hallo!

    Habe ein Problem mit folgendem regulären Ausdruck:
    PHP-Code:
    function check_email($email) {
      
    // RegEx begin
      
    $nonascii      "\x80-\xff"# Non-ASCII-Chars are not allowed

      
    $nqtext        "[^\\\\$nonascii\015\012\"]";
      
    $qchar         "\\\\[^$nonascii]";

      
    $protocol      '(?:mailto:)';

      
    $normuser      '[a-zA-Z0-9][a-zA-Z0-9_.-]*';
      
    $quotedstring  "\"(?:$nqtext|$qchar)+\"";
      
    $user_part     "(?:$normuser|$quotedstring)";

      
    $dom_mainpart  '[a-zA-Z0-9][a-zA-Z0-9._-]*\\.';
      
    $dom_subpart   '(?:[a-zA-Z0-9][a-zA-Z0-9._-]*\\.)*';
      
    $dom_tldpart   '[a-zA-Z]{2,5}';
      
    $domain_part   "$dom_subpart$dom_mainpart$dom_tldpart";

      
    $regex         "$protocol?$user_part\@$domain_part";
      
    // RegEx end

      
    return preg_match("/^$regex$/",$email);

    Quelle: http://aktuell.de.selfhtml.org/tipps...mail/index.htm

    Wenn ich die Funktion ausführe erhalte folgende Warnung:
    preg_match() [function.preg-match]: Unknown modifier '?'
    Kann mir bitte jemand obigen regulären Ausdruck korrigieren?

    Besten Dank!

  • #2
    ersetze mal die / im preg_match durch # oder ! oder ~
    Die Zeit hat ihre Kinder längst gefressen

    Kommentar


    • #3
      vielen dank! hat geklappt! oO

      Kommentar

      Lädt...
      X