2010-06-17 5 views
1

Mon code essaie de remplacer "," par "/" dans une chaîne. Devrais-je échapper "," dans la chaîne regex? Les deux extraits de code ont généré les mêmes résultats, donc je suis confus.virgule dans regex dans la méthode String.replaceAll()?

Extrait de code 1:

String test = "a,bc,def"; 

    System.out.println(test.replaceAll("\\,", "/")); 

Extrait de code 2:

String test = "a,bc,def"; 

    System.out.println(test.replaceAll(",", "/")); 

Dois-je utiliser "" ou "\"? Lequel est le plus sûr?

Merci.

Répondre

3

La virgule n'est pas un caractère spécial, donc pas besoin d'y échapper. Pour plus d'informations, consultez http://www.regular-expressions.info/characters.html, qui énumère spécifiquement des caractères spéciaux et met en garde contre puis

Tous les autres personnages ne doivent pas être protégés avec une barre oblique inverse.

Questions connexes