Bonjour a tous,
de nouveau je vous sollicite pour un probleme encore.
voila, je demande a ma fonction lorsqu'elle rencontre des strings particuliers de les substituer par autre chose, c'est ce qu'elle me fait normalement, mais lorsqu'elle rencontre le meme caractere sur la meme ligne, elle ne me remplace pas la seconde.
un exemple :
RATE = when((RATE_STR <> 0) AND (NTOTAL <> 0), TEMP_RATE / (TEMP_NTOTAL / 360), 0)
en rouge le premier est remplace, mais pas la seconde.
voici mon code qui appel la fonction:
et voici ma fonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 StringBuffer buf=new StringBuffer(); for (int i = start; i < start + length; i++) { buf.append(ch[i]); } try { recup = MySAXApp.substitute( buf.toString(),"&", "&"); recup = MySAXApp.substitute( recup.toString(),"<>", "!="); recup = MySAXApp.substitute( recup.toString(),"\"t", "\" t"); recup = MySAXApp.substitute( recup.toString(),"\"v", "\" v"); recup = MySAXApp.substitute( recup.toString(),"Facettype", "Facet type"); // System.out.println(buf.toString()); _tampon.write(recup.toString()); //_tampon.close(); }
je m'arrache les cheveux, please help.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 static String substitute(String buf, String substring,String substitute) { int result; StringBuffer newstring; result = buf.indexOf(substring); if(result < 0) return buf; newstring = new StringBuffer(); newstring.append(buf.substring(0, result)); newstring.append(substitute); newstring.append(buf.substring(result + substring.length())); return newstring.toString(); }
Partager