Bonjour chère membres,

Je code en Java :
J’explique mon problème :
J’ai une String contenu :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
contenu =<U> blablabla à&nbsp;&nbsp;&nbsp;&nbsp</U>; 12h45 Un car de la mairie vient nous prendre. Blablabla &nbsp; <img alt="" style="width: 300px; border: 0px solid rgb(0, 0, 0); margin: 5px;" 
src="[id-image]F1272555539432[/id-image]" align="left">
Dans cette String je veux juste remplacer les Balise
Code : Sélectionner tout - Visualiser dans une fenêtre à part
src =  [id-image]F1272555539432[/id-image]
par la nouvelle Url que j’ai.
J’ai donc fait un petit bout de code qui remplace cette url :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
maChaine= "[id-image]"+copiUrlImage[i]+"[/id-image]";
contenu = contenu.replaceAll(maChaine, newUrl);
Le problème quand je fais ce bout de code et qu’il ne me remplace pas ma chaine et pas d’erreur non plus j’affiche ma chaine et rien na changer. J’ai essayer de remplacer avec un contenu = contenu.replace(" [" , "t" ) ;
La ca marche il me remplace bien mes balise "[" par "t" .
J’aimerais juste pouvoir remplacer les balises [id-image]F1272555539432[/id-image] même si je dois utilisé un replace.
Le problème c’est qu’il y a du texte avant et je ne peut pas remplacer tout les caractère i,d,-,m,a,g,e avec un replace.
J’ai déjà regardé les Matcher et les Pattern mais la aussi déjà essayer le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
Pattern p = Pattern.compile(« [id-image] ») ;
Matcher m = p.matcher(contenu);
While(m.find())
{	System.out.println(“”+m.group + “’trouvé à’” + m.start() +”fin à”+ m.end ) ;
 
}
Et la pareille il me sort :
a ‘trouvé à ’ 4 fin à 5
e’trouvé à’ 7fin à 8


Et pourtant :
Pattern : permet d'obtenir une version compilée d'une expression régulière.
Matcher : permet d'analyser une chaîne en entrée à partir d'un Pattern.
Donc bon la non plus je ne comprends pas trop

Quelqu’un aurait-il une solution à mon problème ?

Merci de m’avoir lu.

Cordialement.