转载请注明:(http://blog.csdn.net/u012854870/article/details/72869109)
最近做项目的时候产品提了一个现需求,需要将一段String中的非汉字剔除掉
如:String s=”会撒谎大富科技萨克防守打法_d@@@jsfoijdsfj::家建房间:jsajfkjdlaoijdsf法搜iadjfajsfjakAJFJSDF”;
得到结果 String s=”会撒谎大富科技萨克防守打法家建房间法搜”
实现代码如下: String regex="[^\u4E00-\u9FA5]";
String s="会撒谎大富科技萨克防守打法_d@@@jsfoijdsfj::家建房间:jsajfkjdlaoijdsf法搜iadjfajsfjakAJFJSDF";
String a=s.replaceAll(regex, "");
System.out.println(a);
一些常用的正则表达式:
匹配中文:[\u4e00-\u9fa5]
英文字母:[a-zA-Z]
数字:[0-9]
匹配中文,英文字母和数字及_:
^[\u4e00-\u9fa5_a-zA-Z0-9]+$
同时判断输入长度:
[\u4e00-\u9fa5_a-zA-Z0-9_]{4,10}