[java] regex

regex [java] - Java - Programmation

Marsh Posté le 23-08-2002 à 10:50:37    

Je suis pas fort en regex, j'en utilise très peu.
Je voudrais, dans une String, ajouter un '\' devant chaque apostrophe.  
J'ai essayé de faire maString.replaceAll("'", "\\'" ), mais ca marche pas.
Si je fais maString.replaceAll("*'*", "*\\'*" ), ca va pas marcher non plus.
qui pourrait m'aider, sachant qu'en cette fin de semaine j'ai le cerveau un peu ankylosé ?


---------------
Au royaume des sourds, les borgnes sont sourds.
Reply

Marsh Posté le 23-08-2002 à 10:50:37   

Reply

Marsh Posté le 23-08-2002 à 10:52:47    

bof ben pas necessairement besoin de regex
tu écris une fct qui fait du remplacement de String et non de char et paf, wala.
regarde dans StringBuffer y'a ptet un truc qui va t'interesser...


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
Reply

Marsh Posté le 23-08-2002 à 10:53:32    

pfff grillaid :(

Reply

Marsh Posté le 23-08-2002 à 10:57:06    

:D
c pas encore dans la faq ce truc? :D


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
Reply

Marsh Posté le 23-08-2002 à 10:58:09    

non  [:titprem]

Reply

Marsh Posté le 23-08-2002 à 11:12:08    

Bon, j'y avais pensé (si, si), mais j'esperais qu'il y aurait moyen de le faire directement.
Si je suis courageux, la semaine prochaine je fais une subclass de String pour y ajouter toutes ces petites manips que j'aime pas faire.


---------------
Au royaume des sourds, les borgnes sont sourds.
Reply

Marsh Posté le 23-08-2002 à 11:13:25    

je l'avais déjà donné, mais bon ... cado !

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.   }

Reply

Marsh Posté le 23-08-2002 à 11:13:46    

R3g a écrit a écrit :

Bon, j'y avais pensé (si, si), mais j'esperais qu'il y aurait moyen de le faire directement.
Si je suis courageux, la semaine prochaine je fais une subclass de String pour y ajouter toutes ces petites manips que j'aime pas faire.




String est final => pas de subclass !

Reply

Marsh Posté le 23-08-2002 à 11:22:58    

benou a écrit a écrit :

 
String est final => pas de subclass !




 
arf encore grillaid :(

Reply

Marsh Posté le 23-08-2002 à 11:34:19    

benou a écrit a écrit :

je l'avais déjà donné, mais bon ... cado !

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.   }






 
Merci  :jap:  
 

Citation :

String est final => pas de subclass !


Euh, oui, bon, jve aller dormir une paire d'heures moi !


---------------
Au royaume des sourds, les borgnes sont sourds.
Reply

Marsh Posté le 23-08-2002 à 11:34:19   

Reply

Marsh Posté le 23-08-2002 à 11:38:51    

R3g a écrit a écrit :

 
 
Merci  :jap:  
 

Citation :

String est final => pas de subclass !


Euh, oui, bon, jve aller dormir une paire d'heures moi !
 




 
bin c pas si évident que ca. Qd je l'ai appris ca m'a un peu surpris. Ceci dit je tiens qd meme à souligner que ton idée de subclasser String est BAD. Si tu veux fournir ce genre de fonctionnalité fait plutot une classe du genre StringUtil qui peut travailler avec des objets String standard. Avec ta solution on est obligé d'utiliser ta sous classe ...

Reply

Marsh Posté le 23-08-2002 à 11:50:16    

DarkLord a écrit a écrit :

 
 
bin c pas si évident que ca. Qd je l'ai appris ca m'a un peu surpris. Ceci dit je tiens qd meme à souligner que ton idée de subclasser String est BAD. Si tu veux fournir ce genre de fonctionnalité fait plutot une classe du genre StringUtil qui peut travailler avec des objets String standard. Avec ta solution on est obligé d'utiliser ta sous classe ...




:jap: J'en suis arrivé à cette conclusion

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed