【问题】
折腾:
【已解决】antlr语法出错:rewrite syntax or operator with no output option; setting output=AST
期间,在java中,想要把:
反斜杠 \r(可能有,可能没有) \n
替换为空。
【解决过程】
1.参考:
【转】JAVA中string.repalce()和string.replaceAll()有什么区别?
写成:
macroValue = macroValue.replaceAll("\\\r?\n", "");
结果不工作。
2.测试了半天,最终终于用:
public static void testStrReplace() { String macroValue = "123\\" + "\r" + "\n" + "456";//123\\\r\n456 macroValue = macroValue.replaceAll("\\\\\\r\\n", ""); //123456 System.out.println(macroValue); }
解决了替换问题。
【总结】
java中的正则的写法,真的不是一般的变态。
(注:
之前就从:
【已解决】Java的正则表达式java.util.regex中匹配星号’*’ asterisk字符本身
知道这点了)
本来正常的逻辑和写法只需要:
结果到了java的正则中,就要写成:
\\\\\\r\\n
才可以。。。。
其中:
\\\\ -> \\ -> 字符‘\’
\\r -> 字符‘\’+ ‘r’ -> 回车
\\n -> 字符‘\’+ ‘n’ -> 换行
转载请注明:在路上 » 【已解决】Java中的字符串的替换