如果我想在每个空格之前在字符串中附加“\”。我怎么做?

时间:2014-09-05 06:03:54

标签: java string substring charat

  1. 假设输入字符串是Abc def ghi ..我希望结果像这样Abc \ def \ ghi

    Date=122
    Shipper\ Id=11
    Bill\ No=54433
    Weight=431
    Shipper\ Last\ Name=aaa
    Shipper\ First\ Name=cdcx
    

6 个答案:

答案 0 :(得分:0)

您可以尝试这样:

string s = "Abc" + "\\"+ "def" + "\\" + "ghi";

或者您可以尝试用" "

替换您的空间(\
string result  = s.replaceAll(" ","\\ ");

答案 1 :(得分:0)

"Abc def ghi".replaceAll("(?=\\s)", "\\\\")

答案 2 :(得分:0)

试试这个

String s= " Abc def gh";
System.out.println(s.replace(" ", "\\ "));

编辑:

    String s = " Abc def gh";
    // System.out.println(s.replace(" ", "\\ "));

    File f = new File("trail.properties");
    f.createNewFile();
    FileWriter fileWriter = new FileWriter(f);

    fileWriter.write(s.replace(" ", "\\ "));

    fileWriter.close();

输出:

\ Abc\ def\ gh

答案 3 :(得分:0)

使用正则表达式匹配所有空格\s并添加\ 在替换模式中,您需要使用另一个反斜杠\来转义文字\\

String result = searchText.replaceAll("(\\s)", "\\\$1");

答案 4 :(得分:0)

\无需在替换字符串中进行转义,因此

output = input.replaceAll("(?=\\s)", "\\")

会做的伎俩。

答案 5 :(得分:0)

使用Regular expressionreplaceAll(String regex,String replacement)

\s匹配每个白色空白字符,+匹配前面的模式元素一次或多次。

所以请试试这个:

public static void main(String[] args){
        String s="Abc    def     ghi";
        String output = s.replaceAll("\\s+", "\\\\");
        System.out.println(output);// output :Abc\def\ghi
    }