字符串替换 最近做一个贴吧。获取帖子时用ajax返回json数据。。但由于发帖时一些符号。返回回时破环了json格式。求解决办法。笨人笨直接给能用的结果!如果用字符串替换。忘给出全面的替换方法。即使不管用户插入什么字符。都不会破坏json结果了。谢谢; 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 内容用base64编码一下可以解决这个问题 比如 :String a="横线换成逗号-看看成功不。";String b=a.replaceAll("-",","); #2楼的思路可以考虑下,通过编码的方式屏蔽字符差异。如果单纯的用replace处理的话,因为内容的不确定和无规律性不好处理,也可以考虑使用正则 public String StrFilter(String str){ String regEx = "[`~!@#$%^&*()]";//需要过滤的字符 Pattern pattern = Pattern.compile(regEx); Matcher matcher = pattern.matcher(str); return matcher.replaceAll("").trim(); } hi,笨人觉得特殊字符与其直接替换掉不如转义更好点,因为帖子中可能本身就应该包含以下特殊字符,如书名<<>>,%百分号,"",等,所以还是转义可能更能贴近原来帖子的含义百度一下 特殊字符处理 很多方案 http://www.baidu.com/s?tn=baiduhome_pg&ie=utf-8&bs=json+%E8%BD%AC%E4%B9%89&f=3&rsv_bp=1&rsv_spt=1&wd=json+%E7%89%B9%E6%AE%8A%E5%AD%97%E7%AC%A6&rsv_sug3=2&rsv_sug4=32&oq=json+te&rsp=0&rsv_sug5=0&rsv_sug=0&rsv_sug2=0&inputT=3047 好吧 。直接用replaceAll 了。谁能给我写个 把字符串含有 英文下的 ' " [ ] { } : , 替换成 中文下的 ‘ “ 【 】 { } : , 这分就是谁的了。 public static void main(String[] args) { String[] oldArray = { "'", "\"", "[", "]", "{", "}", ":", "," }; String[] newArray = { "‘", "“", "【", "】", "{", "}", ":", "," }; String content = " af'afas asf\"adf [fas fads] fads {asdf }afd :fa asdf,"; for(int i = 0; i < oldArray.length; i ++) content = content.replaceAll(Pattern.quote(oldArray[i]), newArray[i]); System.out.println(content); }不明白难点在哪? hibernate修改对象问题 急!急!急!gwt-ext panel的刷新页面 Tomcat6.0数据库连接池到底应该怎么配置 hibernate3不能查询中文? orm 如何查询实例 spring获取weblogic jndi 数据源急问 weblogic新手问题 菜鸟问题:普通的servlet如何改成struts? 关于struts的title的用法有没有例子可以让我看看。struts的教程那里有。 请问什么是*.ear文件? struts2 神奇问题,太神奇了!! script open窗口 父页面404 跪求高手指点
String b=a.replaceAll("-",",");
public String StrFilter(String str){
String regEx = "[`~!@#$%^&*()]";//需要过滤的字符
Pattern pattern = Pattern.compile(regEx);
Matcher matcher = pattern.matcher(str);
return matcher.replaceAll("").trim();
}
因为帖子中可能本身就应该包含以下特殊字符,如书名<<>>,%百分号,"",等,所以还是转义可能更能贴近原来帖子的含义
百度一下 特殊字符处理 很多方案 http://www.baidu.com/s?tn=baiduhome_pg&ie=utf-8&bs=json+%E8%BD%AC%E4%B9%89&f=3&rsv_bp=1&rsv_spt=1&wd=json+%E7%89%B9%E6%AE%8A%E5%AD%97%E7%AC%A6&rsv_sug3=2&rsv_sug4=32&oq=json+te&rsp=0&rsv_sug5=0&rsv_sug=0&rsv_sug2=0&inputT=3047
public static void main(String[] args) {
String[] oldArray = { "'", "\"", "[", "]", "{", "}", ":", "," };
String[] newArray = { "‘", "“", "【", "】", "{", "}", ":", "," };
String content = " af'afas asf\"adf [fas fads] fads {asdf }afd :fa asdf,";
for(int i = 0; i < oldArray.length; i ++)
content = content.replaceAll(Pattern.quote(oldArray[i]), newArray[i]);
System.out.println(content);
}不明白难点在哪?