Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Wycinanie adresu z okreslonego ciagu znakow
Forum PHP.pl > Forum > Przedszkole
Octobus
Witam,
Muszę z określonego ciągu znaków wyciągnąć adres internetowy oraz domene. Są dwa schematy danych
1.
Kod
http://adres.pl/sciezka-do-strony.html

2.
Kod
http://adres.pl/sciezka-do-strony.html I:costam Q:jakistekst


Sposob ktory mi przyszedl do glowy to sprawdzac czy istnieje spacja, robic explode i parse_url na [0]. Szukam jednak jakiegos szybszego sposobu poniewaz lista bedzie zawierala nawet 100 000 adresow i moge sie nie wyrobic z maksymalnym czasem wykonywania skryptu. Myslicie ze da sie to zrobic w mniejszej ilosci krokow ?
djgarsi
Swego czasu zrobiłem sobie pewną funkcję z wyrażeniami regularnymi. Może się przyda, wystarczy troszke zmienić:

  1. function links($text)
  2. {
  3. $text= preg_replace("/(^|[\n ])([\w]*?)((ht|f)tp(s)?:\/\/[\w]+[^ \,\"\n\r\t<]*)/is", "$1$2<a href=\"$3\" rel=\"nofollow\" target=\"_blank\">$3</a>", $text);
  4. $text= preg_replace("/(^|[\n ])([\w]*?)((www|ftp)\.[^ \,\"\t\n\r<]*)/is", "$1$2<a href=\"http://$3\" rel=\"nofollow\" target=\"_blank\">$3</a>", $text);
  5. $text= preg_replace("/(^|[\n ])([a-z0-9&\-_\.]+?)@([\w\-]+\.([\w\-\.]+)+)/i", "$1<a href=\"mailto:$2@$3\" rel=\"nofollow\" target=\"_blank\">$2@$3</a>", $text);
  6. return($text);
  7. }
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.