使用什么正则表达式删除接收到的数据中的转义字符。
示例:
dd\.mm\.yyyy -> dd.mm.yyyy
d\-mm\-yy -> d-mm-yyyy
m\\d\\yyyy -> m\d\yyyy
测试:
assertEquals("m\\d\\yyyy", removeEscapeChars("m\\\\d\\\\yyyy"));
assertEquals("dd-mm-yyyy", removeEscapeChars("dd\\-mm\\-yyyy"));
assertEquals("dd.mm.yyyy", removeEscapeChars("dd\\.mm\\.yyyy"));
答案 0 :(得分:3)
您似乎想将\x
替换为x
。为此,您可以使用
str = str.replaceAll("\\\\(.)", "$1");
"\\\\"
作为正则表达式代表\
在字符串文字中创建的单个"\\"
.
可以代表任何字符(行分隔符除外,但是根据您的示例,这应该不成问题)(.)
将其放置在“捕获组”中,该组将被索引为1
$1
使我们能够使用组1的当前匹配项(字符由.
匹配,因此该字符将被\
所转义)。