caractère spécial escapping

Tous groovy caractère spécial #{\'}${"}/', doit être remplacé par des \ devant en groovy chaîne dynamiquement

input  : anish$spe{cial
output : anish$spe\{cial
input  : anish}stack{overflow'
output : anish\}stack\{overflow\'

J'ai écrit un exemple de programme en Java, que je veux dans groovier façon

import java.util.regex.*;
import java.io.*;

/**
 * 
 * @author anish
 *
 */
public class EscapeSpecialChar {
    public static void main(String[] args) throws IOException {
        inputString();
    }
    private static void inputString() throws IOException {
        BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
        System.out.print("Enter string to find special characters: ");
        String string = in.readLine();
        //Escape the pattern
        string = escapeRE(string);  
        System.out.println("output: -- " + string);
    }

    //Returns a pattern where all punctuation characters are escaped.
    static Pattern escaper = Pattern.compile("([^a-zA-z0-9])");
    public static String escapeRE(String str) {
        return escaper.matcher(str).replaceAll("\\\\$1");
    }
}

Entrez la chaîne à rechercher des caractères spéciaux: $Anish(Stack%1231+#$124{}

de sortie: -- \$Anish\(Stack\%1231\+\#\$124\{\}

  • alors, quelle est votre question?
  • Qu'avez-vous essayé? Avez-vous regardé groovy.codehaus.org/Regular+les Expressions ? C'est un peu comme votre question précédente: stackoverflow.com/questions/7625140/... . Avez-vous lu tout Groovy de documentation à tous?
  • J'ai essayé de remplacer('$','\\$') , cela remplace $ par \$, mais dans mon cas, dans une Chaîne de caractères, je n'ai pas seulement$, mais aussi le caractère spécial que j'ai besoin d'échapper à toute suggestion de faire dynamiquement, oui c'est lié à la question précédente, mais là, je sais, j'ai seulement $ dans mon Gstring, dans cette question dans mon string j'ai d'autres caractères spéciaux aussi
  • Pourquoi avez-vous besoin pour leur échapper? Pourquoi la Chaîne anish}stack{overflow' Mal? Il est parfaitement valide de la Chaîne... Peut-être avec des explications sur pourquoi vous avez besoin de cette aide les gens?
  • avoir un utilitaire qui permet de convertir le fichier binaire à groovy fichier,disons que la conversion d'un fichier groovy avoir une chaîne de caractères comme "anish$pile{overflow", le même utilitaire vous permet de convertir le fichier groovy dans un fichier binaire, quand il convertir il va vérifier s'il est valide groovy fichier ou pas, le fait d'avoir ces caractère spécial va conduire à l'erreur de compilation, c'est pourquoi j'ai besoin d'une regex où je peux fournir tout spécial characyert le programme va automatiquement barre oblique inverse il
  • Si vous prenez quelque chose qui n'est pas groovy (par le fait même qu'il est sous forme binaire, et contient des caractères non valides pour le groovy compilateur), la conversion de ces données binaires d'une Chaîne de caractères, et l'obtention de l'Groovy compilateur pour compiler ce non-groovy données de bytecode java? Pouvez-vous voir où j'en suis confus? Êtes-vous essentiellement de l'extraction de Chaînes à partir d'un fichier binaire? Si oui, pourquoi ne pas simplement obtenir le groovy code pour charger les Chaînes de lui-même? Il est un autre de vos questions, où je suis hésitant à répondre, comme je sens qu'il y a probablement une bien meilleure façon de faire ce que vous essayez de le faire...
  • J'ai écrit un exemple de programme Java, le résultat que je veux dans groovier style

InformationsquelleAutor anish | 2011-10-31