我是靠谱客的博主 迷路大树,最近开发中收集的这篇文章主要介绍android edittext正则过滤,Android EditText使用正则表达式进行输入过滤,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Android EditText使用正则表达式进行输入过滤

近期在一个项目中用到修改密码这个功能,不过对于密码的输入,我们不希望用户输入汉字或者特殊字符,所以我们需要对用户进行输入的输入框进行过滤,下面是一个对EditText进行过滤的小代码片段:

1.首先给Edittext 添加一个TextWatcher,当然这个TextWatcher我们是要自己写的,核心功能也在这个类中

[java]

mOldPwdET.addTextChangedListener(new SearchWather(mOldPwdET ));

2.下面就是这个自定义的TextWatcher

[java]

class SearchWather implements TextWatcher{

//监听改变的文本框

private EditText editText;

/**

* 构造函数

*/

public SearchWather(EditText editText){

this.editText = editText;

}

@Override

public void onTextChanged(CharSequence ss, int start, int before, int count) {

String editable = editText.getText().toString();

String str = stringFilter(editable.toString());

if(!editable.equals(str)){

editText.setText(str);

//设置新的光标所在位置 www.zzzyk.com

editText.setSelection(str.length());

}

}

@Override

public void afterTextChanged(Editable s) {

}

@Override

public void beforeTextChanged(CharSequence s, int start, int count,int after) {

}

}

public static String stringFilter(String str)throws PatternSyntaxException{

// 只允许字母和数字

String   regEx  =  "[^a-zA-Z0-9]";

Pattern   p   =   Pattern.compile(regEx);

Matcher   m   =   p.matcher(str);

return   m.replaceAll("").trim();

}

希望大家有什么更好的办法,可以分享一下,请大家多多指教。

作者 jamin0107

补充:移动开发 , Android ,

最后

以上就是迷路大树为你收集整理的android edittext正则过滤,Android EditText使用正则表达式进行输入过滤的全部内容,希望文章能够帮你解决android edittext正则过滤,Android EditText使用正则表达式进行输入过滤所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(38)

评论列表共有 0 条评论

立即
投稿
返回
顶部