java怎样转换反斜杠为.?
10个回答
2013-09-13
展开全部
首先,直接在原来的str指向的字符串修改的话,比较麻烦,因为String是不可修改。可以:
遍历str,找到“\\”,如下,
String str = "aa\\bb\\cc";
StringBuffer strBuf = new StringBuffer();
int len = str.length();
for (int i = 0; i < len; i++) {
if (str.charAt(i) == '\\') {
strBuf.append(".");
} else {
strBuf.append(str.charAt(i));
}
}
str = strBuf.toString();
System.out.println(str);
遍历str,找到“\\”,如下,
String str = "aa\\bb\\cc";
StringBuffer strBuf = new StringBuffer();
int len = str.length();
for (int i = 0; i < len; i++) {
if (str.charAt(i) == '\\') {
strBuf.append(".");
} else {
strBuf.append(str.charAt(i));
}
}
str = strBuf.toString();
System.out.println(str);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我第一反应想到的是分割字符串。str.split(\\)获得字符串集合,再连接。
追问
效率不高
追答
一般性思维了,因为字符串的处理一般就是分割,截取。
当然也可以遍历用CharAt(i)取得每一个字符,然后。。。爱怎么处理怎么处理
你可以使用楼上的正则表达式str.replaceAll("\\\\", "\\.")这个效率好像比较高
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public class Test {
public static void main(String[] args) {
String repStr="type = \"3\" value =\"11\" <element type = \"4\" value = \"aa\"/>";
//假设type=3要替换的新value为22,假设type=4要替换的新value为bb
String T3 = "22";
String T4 = "bb";
System.out.println("替换前为: "+repStr);
//第一步替换
repStr = repStr.replaceAll("(type = \"3\" value =\\s*\")[^\"]*\"","$1"+T3+"\"" );
System.out.println("替换第一个后为: "+repStr);
//第二步替换
repStr = repStr.replaceAll("(type = \"4\" value =\\s*\")[^\"]*\"","$1"+T4+"\"" );
System.out.println("替换第二个后为: "+repStr);
}
}
public static void main(String[] args) {
String repStr="type = \"3\" value =\"11\" <element type = \"4\" value = \"aa\"/>";
//假设type=3要替换的新value为22,假设type=4要替换的新value为bb
String T3 = "22";
String T4 = "bb";
System.out.println("替换前为: "+repStr);
//第一步替换
repStr = repStr.replaceAll("(type = \"3\" value =\\s*\")[^\"]*\"","$1"+T3+"\"" );
System.out.println("替换第一个后为: "+repStr);
//第二步替换
repStr = repStr.replaceAll("(type = \"4\" value =\\s*\")[^\"]*\"","$1"+T4+"\"" );
System.out.println("替换第二个后为: "+repStr);
}
}
追问
???
追答
按照这种格式式取做就可以来了啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
str = str.replace("\\",".");
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询