牛骨文教育服务平台(让学习变的简单)
博文笔记

android 利用正则表达式 控制edittext只能输入数字、英文、汉字

创建时间:2015-10-17 投稿人: 浏览次数:186

通过正则表达式来判断。下面的例子只允许显示字母、数字和汉字。

public static String stringFilter(String str)throws PatternSyntaxException{     
      // 只允许字母、数字和汉字      
      String   regEx  =  "[^a-zA-Z0-9u4E00-u9FA5]";                     
      Pattern   p   =   Pattern.compile(regEx);     
      Matcher   m   =   p.matcher(str);     
      return   m.replaceAll("").trim();     
  }

//点击事件调用上述方法

tv_other.setOnClickListener(new OnClickListener() {

   @Override
   public void onClick(View v) {
    // TODO Auto-generated method stub
    nicheng = ed_xiugainicheng.getText().toString();
        String str = stringFilter(nicheng.toString());
            if(!nicheng.equals(str)){
           Toast.makeText(WoXiuGaiNiChengActivity.this, "不能输入非法字符!" , Toast.LENGTH_SHORT).show();
    }

}

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。