Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1366 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [Java] Remplacer un string par un string (Résolu)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Java] Remplacer un string par un string (Résolu)

n°202991
squall36
PSN: JeanquiSquall
Posté le 27-08-2002 à 16:32:57  profilanswer
 

salut,
 
dans une appli, je récupère un champ texte d'un formulaire, et dedans je voudrias remplcer certains mots par d'autres.
 
Le logiciel que j'utilise n'utilise pas jdk 1.4, donc la fonction replaceAll ne marche pas.
 
J'ai bien récupérer une fonction qui remplace un char par un string mais j'arrive pas à l'adapter à mon problèe (string par string) :

Code :
  1. public String replaceBy(WOComponent benevole) {
  2.         /* Permet de remplacer les tags par les champs de la table correspondant */
  3.         StringBuffer buff = new StringBuffer(contenu);
  4.        
  5.         char lettre_interdite = 'a';
  6.         String plus = "ou";
  7.         for(int i=0;i<buff.length();i++) {
  8.             if(buff.charAt(i) == lettre_interdite) {
  9.                 buff.deleteCharAt(i);
  10.                 buff.insert(i,plus);
  11.             }
  12.         }
  13.         contenu = buff.toString();
  14.         return (contenu);
  15.     }


 
 
merci de l'aide


Message édité par squall36 le 27-08-2002 à 17:19:49
mood
Publicité
Posté le 27-08-2002 à 16:32:57  profilanswer
 

n°203005
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 27-08-2002 à 16:42:06  profilanswer
 

squall36 a écrit a écrit :

Le logiciel que j'utilise n'utilise pas jdk 1.4, donc la fonction replaceAll ne marche pas.



C'est quoi ton logiciel  :??:  
Ne me dit pas que tu utilisess Visual J++ ? [:totoz]


---------------
J'ai un string dans l'array (Paris Hilton)
n°203006
bobuse
Posté le 27-08-2002 à 16:43:02  profilanswer
 

une solution serait d'ajouter des boucles (un string est une succession de caractère)
une deuxième serait de remplacer le test sur ton caractère interdit par un equals() ...

n°203007
bobuse
Posté le 27-08-2002 à 16:43:36  profilanswer
 

Harkonnen a écrit a écrit :

C'est quoi ton logiciel  :??:  
Ne me dit pas que tu utilisess Visual J++ ? [:totoz]




Je pense qu'il veut dire qu'il utilise un jdk < 1.4
 
c'est ça hein ?

n°203016
benou
Posté le 27-08-2002 à 16:49:02  profilanswer
 

Code :
  1. public static String replace(String s, String replaced, String replacing) {
  2.     StringBuffer tmp = new StringBuffer(s);
  3.     int i = 0, debut, fin;
  4.     char c = replaced.charAt(0);
  5.     while (i < tmp.length()) {
  6.  while ((i < tmp.length()) && (tmp.charAt(i) != c))
  7.    i++;
  8.  debut = i;
  9.  i++;
  10.  fin = 1;
  11.  while ((i < tmp.length()) && (fin < replaced.length()) && (tmp.charAt(i) == replaced.charAt(fin))) {
  12.    fin++;
  13.    i++;
  14.  }
  15.  if ((i <= tmp.length()) && (fin == replaced.length())) {
  16.    tmp.replace(debut, debut+fin, replacing);
  17.    i = debut + replacing.length();
  18.  }
  19.     }
  20.     return tmp.toString();
  21.   }

n°203029
--greg--
Posté le 27-08-2002 à 16:53:33  profilanswer
 

on commencera à la connaitre cette methode :D


Message édité par --greg-- le 27-08-2002 à 16:53:40

---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°203042
benou
Posté le 27-08-2002 à 17:01:34  profilanswer
 

--greg-- a écrit a écrit :

on commencera à la connaitre cette methode :D




c'est clur ! Mais y arrêtes pas de la demander !
 
si on avait un site, on pourrait la mettre en ligne  :sarcastic:   :(

n°203045
MagicBuzz
Posté le 27-08-2002 à 17:02:53  profilanswer
 

La class String en, Java n'a pas de méthode "Replace" comme en JavaScript :??:

n°203047
squall36
PSN: JeanquiSquall
Posté le 27-08-2002 à 17:03:05  profilanswer
 

j'utilise WebObject, un truc sous Mac, mais je sais pas quel compilateur ça utilise,  mais en tout cas pas 1.4...
 
Merci pour ton code Benou, je vais tester si ça marche là dessus, sinon je crois que j'en ai trouvé un autre que je vais tester aussi !
 
 
:jap:

n°203051
squall36
PSN: JeanquiSquall
Posté le 27-08-2002 à 17:04:02  profilanswer
 

MagicBuzz a écrit a écrit :

La class String en, Java n'a pas de méthode "Replace" comme en JavaScript :??:




 
bah si, mais à partir du jdk1.4, mais c'est pas ça que j'ai...

mood
Publicité
Posté le 27-08-2002 à 17:04:02  profilanswer
 

n°203057
benou
Posté le 27-08-2002 à 17:11:58  profilanswer
 

squall36 a écrit a écrit :

 
Merci pour ton code Benou, je vais tester si ça marche là dessus, sinon je crois que j'en ai trouvé un autre que je vais tester aussi !
:jap:




T'inquiète ca marche ! ca a déjà été testé par quelques forumeurs ;)

n°203058
Cherrytree
cn=?
Posté le 27-08-2002 à 17:12:30  profilanswer
 

benou a écrit a écrit :

 
c'est clur ! Mais y arrêtes pas de la demander !
 
si on avait un site, on pourrait la mettre en ligne  :sarcastic:   :(  



ça vient, ça vient, mais j'ai pas le temps pour l'instant. Je vous demande un peu de patience, sinon mes examens vont en pâtir. :(


---------------
Le site de ma maman
n°203060
benou
Posté le 27-08-2002 à 17:12:39  profilanswer
 

MagicBuzz a écrit a écrit :

La class String en, Java n'a pas de méthode "Replace" comme en JavaScript :??:




bha non. Mais tu sais java et javascript ca a pas grand chose à voir à part le nom et la syntaxe (qui est elle même héritée du C) ...

n°203062
squall36
PSN: JeanquiSquall
Posté le 27-08-2002 à 17:13:38  profilanswer
 

bah vi sans doute, mais ils utilisaient sans doute pas WebObject... dans le genre des fois ça marche et des fois ça marche pas que tu sais pas pourquoi, c'est très fort WebObject  :D

n°203079
squall36
PSN: JeanquiSquall
Posté le 27-08-2002 à 17:18:04  profilanswer
 

benou a écrit a écrit :

 
T'inquiète ca marche ! ca a déjà été testé par quelques forumeurs ;)




 
 
ouaip, c bon!!  encore merci, du coup, j'ai presque fini ma semaine :D
:jap:
 
je vous mets quand même l'autre solution que j,avais trouvée, mais pas testée :

Code :
  1. static String replace(String str, String pattern, String replace) {
  2.         int s = 0;
  3.         int e = 0;
  4.         StringBuffer result = new StringBuffer();
  5.    
  6.         while ((e = str.indexOf(pattern, s)) >= 0) {
  7.             result.append(str.substring(s, e));
  8.             result.append(replace);
  9.             s = e+pattern.length();
  10.         }
  11.         result.append(str.substring(s));
  12.         return result.toString();
  13.     }


 
mais comme je crois que indexOf, c'est qu'à partir du 1.4, ça m'aurait pas servi à grand chose...

n°203081
benou
Posté le 27-08-2002 à 17:18:39  profilanswer
 

Cherrytree a écrit a écrit :

ça vient, ça vient, mais j'ai pas le temps pour l'instant. Je vous demande un peu de patience, sinon mes examens vont en pâtir. :(  




t'inquiête pas, on a compris ...  
occupe toi de ton projet. Le site c'est vraiment secondaire par rapport à ca ! on en est tous conscient !

n°203083
--greg--
Posté le 27-08-2002 à 17:19:11  profilanswer
 

benou a écrit a écrit :

 
t'inquiête pas, on a compris ...  
occupe toi de ton projet. Le site c'est vraiment secondaire par rapport à ca ! on en est tous conscient !



au lieu de jouer et blablater. :fou:


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°203085
--greg--
Posté le 27-08-2002 à 17:19:45  profilanswer
 

squall36 a écrit a écrit :

 
 
mais comme je crois que indexOf, c'est qu'à partir du 1.4,


euh non


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°203087
Cherrytree
cn=?
Posté le 27-08-2002 à 17:21:11  profilanswer
 

--greg-- a écrit a écrit :

au lieu de jouer et blablater. :fou:



XLIX XLIX, voilà j'ai fermé mon explorer en 2 XLIX. :D


---------------
Le site de ma maman
n°203091
squall36
PSN: JeanquiSquall
Posté le 27-08-2002 à 17:22:19  profilanswer
 

--greg-- a écrit a écrit :

euh non




 
oops.. en fait c'est pour StringBuffer que c'est à partir du 1.4 (vérifié dans l'API :D )

n°203096
benou
Posté le 27-08-2002 à 17:23:02  profilanswer
 

squall36 a écrit a écrit :

 
 
mais comme je crois que indexOf, c'est qu'à partir du 1.4, ça m'aurait pas servi à grand chose...




nan, le indexOf avec un char (ou même avec une String)est ancien (c'est marqué dans la javadoc (param since).
 
mais leur truc est vraiment pas optimisé : ils font plein de substring ! beurk !

n°203120
squall36
PSN: JeanquiSquall
Posté le 27-08-2002 à 17:32:30  profilanswer
 

benou a écrit a écrit :

 
nan, le indexOf avec un char (ou même avec une String)est ancien (c'est marqué dans la javadoc (param since).
 
mais leur truc est vraiment pas optimisé : ils font plein de substring ! beurk !




 
tout le monde ne peut pas être une star... :D

n°203151
benou
Posté le 27-08-2002 à 17:48:04  profilanswer
 

squall36 a écrit a écrit :

 
tout le monde ne peut pas être une star... :D




 :ange:  :)

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [Java] Remplacer un string par un string (Résolu)

 

Sujets relatifs
[resolu][builder] evenement onmousexxx && fenetre openglremplacer en C
[JAVA, XML]inclure des .xml dans du xml[JAVA/JSP]
[PHP] besoin d'aide pour faire tout en un seul fichier... [RESOLU][java] peut on passer un tableau en argument d'un constructeur ?
emacs et javaEditeur : c'est quoi la différence entre netbean et le studio de java?
[JS] trouve pas de titre, problmes de syntax?[resolu]convertir un prog java en algo ?
Plus de sujets relatifs à : [Java] Remplacer un string par un string (Résolu)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR