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

  FORUM HardWare.fr
  Programmation
  Java

  Utilisaton de String.replaceAll

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Utilisaton de String.replaceAll

n°977259
ksavieras
Posté le 10-02-2005 à 09:26:29  profilanswer
 

Salut,
 
Je souhaite faire des enregistrement dans une bd, en sachant qu'il peut très bien y avoir des apostrophe dans les champs
Le pb que je rencontre est que logiquement en faisant insert into table(nom) values 'l'equipe' j'ai bien entendu une erreur dans l'execution sql.
Je sais que le caractère d'échappement est \ donc il faut transformer l'equipe en l\'equipe. C'est là que ca se corse
Je fait String st = "///'", System.out.println(st) me donne bien \' mais nom = nom.replaceAll("'", st) semble n'avoir aucun effet. Alors que nom = nom.replaAll("'", "a" ) par exemple donne bien le résultat attendu.
j'avoue que je suis perplexe
Merci

mood
Publicité
Posté le 10-02-2005 à 09:26:29  profilanswer
 

n°977412
patachou
Posté le 10-02-2005 à 11:12:11  profilanswer
 

st = "///'", System.out.println(st) me donne bien \' ?
 
moi j'aurais mis nom.replaceAll ("'", "\\'" );

n°977439
ksavieras
Posté le 10-02-2005 à 11:25:26  profilanswer
 

Alos je confirme que st ="///'" donne bien \'
je suppose que le premier / sert de caractère d'échappement pour le second
J'ai également essayé ta méthode et j'ai le meme pb, à savoir que system.out.println donne bien '/ mais le replace ne fonctionne pas

n°977459
patachou
Posté le 10-02-2005 à 11:31:33  profilanswer
 

J'ai googlé, j'ai vu quelqu'un faire :
 
replace("I'm sure this works","\'","\\\'" );

n°977531
ksavieras
Posté le 10-02-2005 à 12:12:22  profilanswer
 

Il est optimiste s'il est sur que ça marche !
La méthode replace ne prends que deux arguments, doit s'appliquer à un objet String, et les arguments doivent être de type Char et non String.  
C'est étrange de voir que "\\'" et "\\\'" donnent bien \' quand on l'affiche, mais ne donne pas le même résultat dans un replaceAll

n°977576
patachou
Posté le 10-02-2005 à 13:18:58  profilanswer
 

Oui en fait c'est une fonction qu'il a créé lui, j'ai lu trop vite fait :
http://forums.devarticles.com/arch [...] ddSlashes-
 
Dans google j'ai tapé java addslashes sachant que addslashes c'est la fonction PHP qui cherche à faire ce que tu veux

n°977793
ksavieras
Posté le 10-02-2005 à 16:23:20  profilanswer
 

Ok, j'ai essayé ca fonctionne merci pour ton coup de main
Cela dit comme il le dit dans son intro, c'est quand même bizarrement foutu dans java


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

  Utilisaton de String.replaceAll

 

Sujets relatifs
String pour 2 Forms[Resolu] [Mysql]Probleme d'insertion de string avec des anti slashs
Remplacer le caractère ' dans une StringParser un string (Date)
showMessageDialog(...,String s,...) et mise en formeConvertir une une string base 2 en string base 16
Passer de char array a stringComparer contenu cellule excell et string
operation sur stringcommande pour lire un string
Plus de sujets relatifs à : Utilisaton de String.replaceAll


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