有人要求我用空格替换字符串中的转义字符。
我一直在尝试如下
String replace(String data)
{
String strSpecial = "";
strSpecial = " \f\n\r\t\'\"\\";
char charArray[] = strSpecial.toCharArray();
String strOutData = data;
for (int i =0;i<charArray.length;i++)
{
strOutData = strOutData.replace(charArray[i], ' ');
}
return(strOutData);
}
我收到错误 - “未终止的字符串常量”
当我使用任何字符而不是空格来替换转义字符时,它起作用了。
请推荐
谢谢 桑迪普
最佳答案
我会使用正则表达式:
String replace(String data) {
return data.replaceAll("[\f\n\r\t\'\"\\\\]", " ");
}
注意实现单个文字正则表达式反斜杠所需的 4 个反斜杠;字符串文字中的每对反斜杠在字符串中构成一个文字反斜杠,而字符串中生成的一对反斜杠在正则表达式中构成一个文字反斜杠。
关于java - 用空格替换转义字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23014823/