Récuperer des morceau de texte / Regex

[Résolu]
Signaler
Messages postés
106
Date d'inscription
mardi 6 janvier 2004
Statut
Membre
Dernière intervention
1 décembre 2008
-
Messages postés
106
Date d'inscription
mardi 6 janvier 2004
Statut
Membre
Dernière intervention
1 décembre 2008
-
Bonjour

j'aimerai récupérer les url des images dans un texte. Donc le but du script est de chercher les balises images et de ne prendre que l'url à l'intérieur.
J'ai écrit ce premier code:

var texte = "blablablablablabla";
var reg = //gi;
var resultat = texte.match( reg ) ;
for(var i=0;resultat!=null && i<resultat.length;i++){ 
   alert ("resultat:\n" + resultat[i] ) ;
}

mais je n'arrive pas à ne récuperer que l'url, ça me retourne toute la chaine trouvée ... quelqu'un a une piste pour moi?
merci d'avance

7 réponses

Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
ça dépend de ce que tu veux faire... je n'ai probablement pas été très clair,

mais par exemple :
....replace(/\w*/g, function($0) { return ce qu'on veut }

$0 c'est la "sélection", qui sera remplacée par le return de la fonction.

un exemple, mis sur codesSources... je ne sais plus où, comme
    alternative à une autre solution proposée.

    var tmp="exemple TOTO, et La jean-claude ?";
    document.getElementById("txt").value=tmp;
    tmp=tmp.replace(/\w*/g, function($0) {     return $0.toUpperCase().charAt(0)+$0.substring(1) } );
    alert(tmp);

   
<hr />


Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
18
B
onjour...

Avec ceci peut être...

var T_Result = new Array();
var T_Img = document.body.getElementsByTagName('img');
for( var i=0; i < T_Img.length; i++){
  T_Result[i] =

T_Img.src;





}
alert( T_Result);






;0)
Messages postés
106
Date d'inscription
mardi 6 janvier 2004
Statut
Membre
Dernière intervention
1 décembre 2008

Merci poru la réponse. Mais en fait récuperer les url images n'étais qu'un exemple, j'ai besoin de récuperer d'autre chose avec les Regex donc je pourai pas utiliser ça tout le temp :s
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
Bonjour,

    la question est néanmoins dans du texte ou dans une page ?

    si c'est dans du texte, pas un pro des expressions régulières,
       je mitigerais avec substring ( loin d'être sûr que ce soit le "top" )...

<script type="text/javascript">
var texte = 'blablablablablabla';
var reg = /src="(.*?)"/gi;      // recherche src= pour l'exemple
var resultat = texte.match(reg);
var tmp;
for(var i=0;i<resultat.length;i++)
{  tmp=resultat[i].substr(resultat[i].indexOf('"')+1);
   alert ( tmp.substr(0,tmp.length-1)) ;
}
</script>

    si c'est dans la page, la solution de PetOleTeam, est nickel.

<hr />


Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
j'ai omis de dire :
on peut bien sûr faire directement ce substring dans l'expression régulière,
mais pour l'exemple...
<hr />


Cordialement                Bul     [mon Site]     [M'écrire]



<hr />
Messages postés
106
Date d'inscription
mardi 6 janvier 2004
Statut
Membre
Dernière intervention
1 décembre 2008

Oui c'es teffectivement la méthode que j'utilise pour le moment, mais tant qu'à utiliser quelque chose d'aussi puissant que les Regex j'aurai aimé qu'ils puissent faire tout le boulot ^_^
(par contre ta remarque m'interesse, qu'entend tu par "faire le substr directement dans l'expression regulière" ?)
Messages postés
106
Date d'inscription
mardi 6 janvier 2004
Statut
Membre
Dernière intervention
1 décembre 2008

Merci bien, ce derniere exemple m'a permis de bidouller quelque chose, mais ça reste de la bidoulle je ttouve bizarre qu'à l'instar des autre language il n'y ai pas quelque chose de plus simple.