请问怎么用正则表达式过滤掉非中文的文本

bentu610 2008-08-19 04:12:16
用哪个正则表达式可以过滤掉非中文的内容,
这里的中文指的是所有的汉字,但不包括中文
的标点
...全文
1197 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
mayuanfei 2008-08-19
  • 打赏
  • 举报
回复
1.先把其他的字符替换成空(参考楼上).
2.再把所有中文标点替换为空.剩下的就是你要的中文了.
thinkisbest 2008-08-19
  • 打赏
  • 举报
回复
中文过滤好东西收藏下
acrobatyuer 2008-08-19
  • 打赏
  • 举报
回复
不懂...但顶起来了....
rascalboy520 2008-08-19
  • 打赏
  • 举报
回复
这是我用过的代码,楼主改一下就可以用了,

/**
* 处理含有中文字符的url
*
* @param url
* @return 新的url
*/
public static String enCodeURL(String url, String code) {
if (!StringUtil.isFine(url))
return null;
Pattern pattern = Pattern.compile(
"[\u300a\u300b]|[\u4e00-\u9fa5]|[\uFF00-\uFFEF]",
Pattern.CASE_INSENSITIVE | Pattern.DOTALL);
Matcher m = pattern.matcher(url);
if (m.find()) {
int get = m.start();
String suburl = url.charAt(get) + "";
String encodesuburl = "";
try {
encodesuburl = URLEncoder.encode(suburl, code);
} catch (Exception e) {
}
url = url.replaceAll(suburl, encodesuburl);
url = enCodeURL(url, code);
}
url = url.replaceAll(" ", "20%");
return url;
}
  • 打赏
  • 举报
回复
添加过滤器。

pattern = "[\u4e00-\u9fa5]*"
Even__Chung 2008-08-19
  • 打赏
  • 举报
回复
具体方法我也是不是很清楚
过滤吧!

给楼主顶上!

愿你找到答案!

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧