Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] preg_replace + str_replace, zamiana tekstu w linki, usunięcie znaku + z anchora
tenloginjestzaje...
post
Post #1





Grupa: Zarejestrowani
Postów: 358
Pomógł: 1
Dołączył: 20.07.2014

Ostrzeżenie: (0%)
-----


Witam
Nie mogę sobie poradzić z usunięciem znaku + z anchora linku:
  1. $preg_replace = array('@(https?://([-\w\.]+[-\w])+(:\d+)?(/([\w/_\.#-+żźśłąęóŻŹŚŁĄĘÓ.-]*(\?\S+)?[^\.\s])?)?)@',);
  2. $search_replace = array('<a href="$1">$1</a>');
  3. $string = preg_replace($preg_replace, $search_replace, $string);


Kompletnie nie wiem jak się za to zabrać, dzięki
Ps. str_replace w $search_replace nie działa.

Ten post edytował tenloginjestzajety 14.03.2019, 19:42:38
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Tomplus
post
Post #2





Grupa: Zarejestrowani
Postów: 1 884
Pomógł: 231
Dołączył: 20.03.2005
Skąd: Będzin

Ostrzeżenie: (0%)
-----


Nie wiem co CI ten plus przeszkadza:

Działający kod jest taki, ale jeżeli chciałbym zlikwidować plus, to po lub przed zamianą tekstu zrobiłbym usuwanie znaków nielegalnych.
  1. url = '/(http|https|ftp|ftps)\:\/\/[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}(\/\S*)?/';
  2. $string= preg_replace($url, '<a href="$0" target="_blank" title="$0">$0</a>', $string);
  3. echo $string;


Czyli:
  1. if(sprawdzCzyLink($string)) {
  2. usunNieleganeZnaki($string);
  3. $string = zamienNaHtml($string);
  4. }
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 17.10.2025 - 21:29