Utilisatin de regex pour les liens www-http
Fermé
bala
-
29 juin 2009 à 11:07
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 - 30 juin 2009 à 10:55
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 - 30 juin 2009 à 10:55
A voir également:
- Utilisatin de regex pour les liens www-http
- Protocole http - Guide
- Www tubidy.com ✓ - Forum Audio
- Www waptrick.com - Télécharger - Divers TV & Vidéo
- Www.24hack.24 - Forum Photo numérique
- Www,xnxx ✓ - Forum Programmation
5 réponses
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
921
29 juin 2009 à 11:09
29 juin 2009 à 11:09
salut,
plusieurs exemples fonctionnels.
plusieurs exemples fonctionnels.
merci d avoir reagi rapidement.
le methodes propose ds ce lien marche effectivement; mais des que j ai a faire a un text ou il n ya qu un seul lien http, celui ci ne sera presente qu a moitie comme lien.
deplus je voudrai aussi que toutes les adresse email soit cliquable.
peut ton m aider?
mon code:
public function translateBlob($blob){
if ($blob !="") {
$newvalue = nl2br($blob->load());
$in=array(
'`(((https?|ftp)://(www\.)?[^www][[:alnum:]_.-]+)\.([a-z]{2,4}))`',
'`\s?(?<!//)(www\.)([[:alnum:]_.-]+)\.([a-z]{2,4})\s?\W?`');
$out=array(
'<a href="$1" target="_blank">$1</a>',
'<a href="http://$1" target="_blank">$1</a>');
return preg_replace($in,$out,$newvalue);
}
}
le methodes propose ds ce lien marche effectivement; mais des que j ai a faire a un text ou il n ya qu un seul lien http, celui ci ne sera presente qu a moitie comme lien.
deplus je voudrai aussi que toutes les adresse email soit cliquable.
peut ton m aider?
mon code:
public function translateBlob($blob){
if ($blob !="") {
$newvalue = nl2br($blob->load());
$in=array(
'`(((https?|ftp)://(www\.)?[^www][[:alnum:]_.-]+)\.([a-z]{2,4}))`',
'`\s?(?<!//)(www\.)([[:alnum:]_.-]+)\.([a-z]{2,4})\s?\W?`');
$out=array(
'<a href="$1" target="_blank">$1</a>',
'<a href="http://$1" target="_blank">$1</a>');
return preg_replace($in,$out,$newvalue);
}
}
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
921
29 juin 2009 à 19:06
29 juin 2009 à 19:06
des que j ai a faire a un text ou il n ya qu un seul lien http, celui ci ne sera presente qu a moitie comme lien.
heu… ça veut dire quoi ?
heu… ça veut dire quoi ?
Salut
en fait j ai de nombreux textes qui sont stocke dans ma base de donnees. avec la methode translateBlob($blob)
je traite ces textes avant de les presenter.j utilise pour ce faire des regex pour dire: qu importe le texte qui sera sortie de la base de donnees, si il contient du www+chaine de charactere, du http/s ou du ftp +chaine de characteres;tout comme une ou des adresse emails se goupe de mot doit toutde suite etre cliquable. et s il ne contient aucun lien de la sorte alors je renvoie le texte tel quel.
tous les tutos ki mon ete propose me propose des methodes ou des liens ds certain textes ne sont pas reconnu quelqun aurait til une solution final? qui me permettrai de representer tous les liens dans tous les textes
public function translateBlob($blob){
if ($blob !="") {
$newvalue = nl2br($blob->load());
$in=array(
'`(((https?|ftp)://(www\.)?[^www][[:alnum:]_.-]+)\.([a-z]{2,4}))`',
'`\s?(?<!//)(www\.)([[:alnum:]_.-]+)\.([a-z]{2,4})\s?\W?`');
$out=array(
'<a href="$1" target="_blank">$1</a>',
'<a href="http://$1" target="_blank">$1</a>');
return preg_replace($in,$out,$newvalue);
}
}
en fait j ai de nombreux textes qui sont stocke dans ma base de donnees. avec la methode translateBlob($blob)
je traite ces textes avant de les presenter.j utilise pour ce faire des regex pour dire: qu importe le texte qui sera sortie de la base de donnees, si il contient du www+chaine de charactere, du http/s ou du ftp +chaine de characteres;tout comme une ou des adresse emails se goupe de mot doit toutde suite etre cliquable. et s il ne contient aucun lien de la sorte alors je renvoie le texte tel quel.
tous les tutos ki mon ete propose me propose des methodes ou des liens ds certain textes ne sont pas reconnu quelqun aurait til une solution final? qui me permettrai de representer tous les liens dans tous les textes
public function translateBlob($blob){
if ($blob !="") {
$newvalue = nl2br($blob->load());
$in=array(
'`(((https?|ftp)://(www\.)?[^www][[:alnum:]_.-]+)\.([a-z]{2,4}))`',
'`\s?(?<!//)(www\.)([[:alnum:]_.-]+)\.([a-z]{2,4})\s?\W?`');
$out=array(
'<a href="$1" target="_blank">$1</a>',
'<a href="http://$1" target="_blank">$1</a>');
return preg_replace($in,$out,$newvalue);
}
}
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
921
30 juin 2009 à 10:55
30 juin 2009 à 10:55
des liens ds certain textes ne sont pas reconnu
pour quelle raison ?
c'est ça qu'il faut définir.
as-tu des exemples d'URL qui ne sont pas reconnues ?
pour quelle raison ?
c'est ça qu'il faut définir.
as-tu des exemples d'URL qui ne sont pas reconnues ?