Seite 1 von 1

eregi_replace() oder preg_replace() problem...

Verfasst: 20.04.2009, 16:56
von JohnBi
Erstmal möchte ich mich für die vielen hilfreichen Tipps rund ums Webcoding und der Programmierung bedanken. Eure Tipps haben mich immer wieder ein Stück weitergebracht.

Ich habe nun wiedermal ein Problem welches mich verrückt macht und ich irgendwie auf keinen grünen Zweig komme weil ich die Platzhalter nicht verstehe, irgendwie so ähnlich wie bei mod_rewrite...

Ich möchte einen Text der von Usern erstellt wird nach www und nach einer Telefonnummer abgrasen und dann die URL und die Telefonnummer entfernen.

und ich stelle mir das so vor ...

jemand gibt www.domain.de ein und dann soll mit eregi_replace eben www.domain.de gegen nichts ausgetauscht werden.

bei der Telefonnummer ist dies schon bissel schwieriger aber da möchte ich das wenn 5 Zahlen hintereinander auftauschen alle Zahlen gelöscht werden ...

Ich bin schon die ganze Zeit am suchen und am probieren aber irgendwie will keins der Sachen funktionieren, weiss jemand Rat?

Verfasst:
von

Verfasst: 20.04.2009, 17:12
von Fireball
Bei einfachen und fest definierten Sachen kannst du auch einfach str_replace nehmen:

$newstring = str_replace("www.domain.de","","Dies ist ein Text der unter anderem www.domain.de enthält");

Verfasst: 20.04.2009, 17:16
von net(t)worker
preg_replace("/[0-9 -\/]{5,}/"," ",$text);

alle zahlen, leerzeichen, - und / werden erfasst, mindestlänge 5 zeichen

Verfasst: 20.04.2009, 17:21
von JohnBi
und das mit "www." die komplette Zeichenkette, das mit der Nummer ist schonmal Top... danke dafür

geht das wenn ich das so mache ?

preg_replace("/[www.A-Za-z0-9]{3,}/"," ",$text);

ne, das hat mir gerade alles zerschossen ...

ich brauch etwas, das nach www. sucht und dann
alle Zeichen a-z/A-Z/0-9 und / und : entfernt

wie formulier ich sowas?

ok ich hab bissel bei Google auf Englisch gesucht und dank net(t)worker Hinweis habe ich die Lösung gefunden, für den Fall das jemand das auch mal braucht...

Code: Alles auswählen

  $urlsearch&#91;&#93; = "/&#40;&#91;^&#93;_a-z0-9-=\"'\/&#93;&#41;&#40;&#40;https?|ftp&#41;&#58;\/\/|www\.&#41;&#40;&#91;^ \r\n\&#40;\&#41;\*\^\$!`\"'\|\&#91;\&#93;\&#123;\&#125;;<>&#93;*&#41;/si";
  $urlsearch&#91;&#93; = "/^&#40;&#40;https?|ftp&#41;&#58;\/\/|www\.&#41;&#40;&#91;^ \r\n\&#40;\&#41;\*\^\$!`\"'\|\&#91;\&#93;\&#123;\&#125;;<>&#93;*&#41;/si";
  $urlreplace&#91;&#93;= "\\1&#91;_URL_&#93;\\2\\4&#91;_/URL_&#93;";
  $urlreplace&#91;&#93;= "&#91;_URL_&#93;\\1\\3&#91;_/URL_&#93;";

  $emailsearch&#91;&#93; = "/&#40;&#91;\s&#93;&#41;&#40;&#91;_a-zA-Z0-9-&#93;+&#40;\.&#91;_a-zA-Z0-9-&#93;+&#41;*@&#91;a-zA-Z0-9-&#93;+&#40;\.&#91;a-zA-Z0-9-&#93;+&#41;*&#40;\.&#91;a-zA-Z&#93;&#123;2,&#125;&#41;&#41;/si";
  $emailsearch&#91;&#93; = "/^&#40;&#91;_a-zA-Z0-9-&#93;+&#40;\.&#91;_a-zA-Z0-9-&#93;+&#41;*@&#91;a-zA-Z0-9-&#93;+&#40;\.&#91;a-zA-Z0-9-&#93;+&#41;*&#40;\.&#91;a-zA-Z&#93;&#123;2,&#125;&#41;&#41;/si";
  $emailreplace&#91;&#93;= "\\1&#91;_MAIL_&#93;\\2&#91;_/MAIL_&#93;";
  $emailreplace&#91;&#93;= "&#91;_MAIL_&#93;\\0&#91;_/MAIL_&#93;";

  $text = preg_replace&#40;$urlsearch, $urlreplace, $text&#41;;