Ankündigung

Einklappen
Keine Ankündigung bisher.

email liste erstellen

Einklappen

Neue Werbung 2019

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

  • email liste erstellen

    hallo,
    ich möchte aus einem text mit mehreren email-adressen die email_adressen herauslesen um sie folgendermaßen zu formatieren:

    [smtp:email@adres.se]

    und ich will sie untereinander schreiben.
    das untereinanderschreiben und das herausfiltern klappt schon einwandfrei
    und zwar so:

    Code:
    $text = preg_replace("/([\w-?&;#~=\.\/]+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?))/i","[SMTP:$1]
    ",$text);
    jetzt möchte ich aber auch noch den gesamten restlichen text und evt doppelte email-adressen löschen. aber ich hab keinen schimmer welche funktionen ich dafür benutzen muss.
    kann mir da vieleicht jemand weiterhelfen?
    danke
    enotiz der ultimative Online-Notizzettel

  • #2
    preg_match
    Damit findest du zusammen mit dem regulären Ausdruck die E-Mail-Adressen. Sie stehen im 3. Argument.

    print_r
    PHP-Code:
    <?php
    print '<pre>';
    print_r($match);
    print 
    '</pre>';
    ?>
    Jetzt siehst du wie der Array aufgebaut ist.

    Du kannst jetzt Elemente entfernen, ersetzen und mit array_unique doppelte Einträge entfernen.
    Dazu kannst du dir die Array-Funktionen mal ansehen.

    Kommentar


    • #3
      danke danke jetzt laeufts
      wers gebrauchen kann hier bitte:

      Code:
      <?
      $zeichenkette = $text;
      $suchmuster = '/([\w-?&;#~=\.\/]+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?))/i';
      preg_match_all($suchmuster, $zeichenkette, $treffer);
      $treffer[0] = array_unique($treffer[0]);
      foreach ($treffer[0] as $value) {
          echo "[SMTP:$value]
      ";
      }
      ?>
      enotiz der ultimative Online-Notizzettel

      Kommentar

      Lädt...
      X