|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Jan 2003
Città: Bologna
Messaggi: 219
|
[PHP] PREG REPLACE COME FUNZIONA?
Salve a tutti,
se c'è un'ostacolo che non ho mai superato è capire come cavolo funziona. preg_replace. fin'ora ho capito solo come sostituire una precisa stringa con un'altra precisa stringa, ma per il resto? immagino sia una funzione dalle grandi potenzialità, ma quando comincio a vedere cose come queste: Codice:
"'<[\/\!]*?[^<>]*?>'si", Grazie a tutti quelli che mi aiuteranno. Adriano.
__________________
“Il vero viaggio di scoperta non consiste nel cercare nuove terre, ma nell'avere nuovi occhi.” Marcel Proust |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
http://www.php.net/manual/en/referen...ern.syntax.php http://en.wikipedia.org/wiki/Regular_expression
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Jan 2003
Città: Bologna
Messaggi: 219
|
grazie andbin,
ho già iniziato a leggere supponiamo che io voglia fare dei link in automatico quindi ad esempio riconoscere tutte le stringhe che iniziano per http:// e finiscono per .com e farle diventare <a href="http://qualsiasicosa.com" target="_blank">http://www.qualsiasicosa.com</a>. Tu come faresti? thanx
__________________
“Il vero viaggio di scoperta non consiste nel cercare nuove terre, ma nell'avere nuovi occhi.” Marcel Proust |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: May 2006
Città: Salerno
Messaggi: 936
|
ma in che linguaggio?
|
|
|
|
|
|
#5 |
|
Member
Iscritto dal: Jan 2003
Città: Bologna
Messaggi: 219
|
cavolo Angel solo ora vedo la tua risposta, in PHP.
in pratica dovrei sostituire (L=http://www.indirizzodellink.com)titolo del link(/L) con <a href=\"http://www.indirizzodellink.com\">titolo del link</a> mi aiuti?
__________________
“Il vero viaggio di scoperta non consiste nel cercare nuove terre, ma nell'avere nuovi occhi.” Marcel Proust |
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Codice:
<?php
$s = "(L=http://www.indirizzodellink.com)titolo del link(/L)";
$s2 = preg_replace ("/\(L=(.*)\)(.*)\(\/L\)/", "<a href=\"$1\">$2</a>", $s);
echo $s2;
?>
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
|
|
|
|
|
#7 | |
|
Member
Iscritto dal: Jan 2003
Città: Bologna
Messaggi: 219
|
Quote:
P.S. come da tuo consiglio sono andato a leggere la documentazione sulle espressioni regolari ma non mi è ancora chiaro il quadro generale del preg replace. Leggendo il codice che mi hai mandato credo di aver capito un'altra cosa che ignoravo, se non erro, ovvero che vengono impostate in automatico delle variabili numeriche progressive contenenti le stringhe da lasciare invariate in ordine di apparizione....dico bene?
__________________
“Il vero viaggio di scoperta non consiste nel cercare nuove terre, ma nell'avere nuovi occhi.” Marcel Proust |
|
|
|
|
|
|
#8 | |
|
Member
Iscritto dal: Jan 2003
Città: Bologna
Messaggi: 219
|
Quote:
In pratica lo script funziona se in un testo c'è un solo link, mentre già se ne metto 2 va in tilt. Ho provato a cambiare l'espressione, ma ancora nessun risultato. Sapresti per caso aiutarmi? grazie, Adriano.
__________________
“Il vero viaggio di scoperta non consiste nel cercare nuove terre, ma nell'avere nuovi occhi.” Marcel Proust |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:32.




















