android edittext 正则限制,Android EditText 使用正则表达式进行输入过滤

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

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

mOldPwdET.addTextChangedListener(new SearchWather(mOldPwdET ));

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

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);

//设置新的光标所在位置

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();

}

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/506296.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一会404一会500_没网络就是404?这锅可不能乱背!

在那个房价未突破天际,一台计算机还可以占着几间房的年代。数据库被存放在一个神秘的房间中。如果无法找到请求者所需要的文件,用户将会得到file not found的信息。而这件房间的门牌就是404。404https://www.zhihu.com/video/1168484640850579456当然以上…

android8 呼吸灯,红米note8pro呼吸灯颜色如何设置?

红米note8pro支持呼吸灯功能,当有未读通知的时候,指示灯就会闪烁提醒。此外,我们还可以根据自己的喜好设置呼吸灯的颜色,下面为大家带来详细的设置教程。红米note8pro怎么设置呼吸灯颜色1、首先,进入手机桌面&#xff…

java string 返回匹配正则的字符串的起始位置_【Python】正则表达式

概述正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。 Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。re 模块使 Python 语言拥有全部的正则表达式功能。 compile 函数根据一个模式字符串和可…

html九图拼图游戏代码,HTML5拼图游戏

拼图游戏介绍 拼图游戏将一幅图片分割成若干拼块并将它们随机打乱顺序。当将所有拼块都放回原位置时,就完成了拼图(游戏结束)。 在“游戏”中,单击滑块选择游戏难易,“容易”为3行3列拼图游戏,中间为一个4行4列拼图游戏&#xff0…

access驱动程序_Linux驱动程序学习二 (续) scull 源码在内核5.4.0上的编译调试

《LINUX设备驱动程序》第三章提供了源码scull,但是由于我用的是5.4.0内核,书中的是2.6.10内核,内核发生了很大的变化,因此编译scull源码花费了不少时间,下面是编译调试记录。(这个编译调试记录应该是目前网络上适应内核版本最高的,所以也希望给近期加入《…

android评论嵌套,android 嵌套的listview示例(可参照实现朋友圈评论)

android 嵌套的listview示例(可参考实现朋友圈评论) 最近在项目中用到listview中再嵌套一个listview,两层也有监听,都没有问题。其实,主要解决里面那一层的listview的高度计算就可以,外面那一层listview自动计算。加上里面那层展开…

捷达vs7测试_捷达VS5话题:防撞钢梁,溃缩梁。第200311期

//封面图,捷达VS5,自中,最近看到网上有些观点有点儿带偏,然后咱们技术群今天也讨论了一下,大家也来听听咱们爱折腾的车主们是怎么看防撞梁的事情的。事情起因是因为大家看到一些网上的拆车视频,说捷达VS5前…

html5 原生拖拽,原生JS实现拖拽效果

这篇文章主要为大家详细介绍了原生JS实现拖拽效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下本文实例为大家分享了JS实现拖拽效果的具体代码,供大家参考,具体内容如下想要让整个元…

ov5640帧率配置_逃离塔科夫怎么提升帧率 帧率优化建议_单机游戏_游戏攻略

逃离塔科夫有着非常真实的游玩与画面表现,所以这类的多人游戏比较吃配置,那么帧率上不去会十分影响游戏体验,下面请看由“SIIYAM”带来的逃离塔科夫帧率优化建议,一起来看看吧。帧率优化建议:这游戏对于cpu资源分配和内…

js 带笔锋 签字版_年轻人的第一支签字笔? ——米家签字笔评测

emm感觉笔者能咕到自己都怀疑人生惹QAQ…对于小米而言,可能他家中性笔做的还真没手机那么好。但对于劝退这件事,理由其实是很复杂的。但既然决定了要来写这样一点东西,那我也自然要把我知道的和能想到的,略述一二。我们先来看看小…

html滚动效果代码,javascript 实现滚动效果代码整理

1.先写两个最常用最简洁的滚动代码代码如下:水平滚动:水平滚动字幕内容垂直滚动:垂直滚动字内容2.平稳不间断滚动var tmnullfunction newsScroll() {var scrollimgdocument.getElementById("scroll")if(scrollimg.parentNode.scrol…

itools 不支持缩略图下载_PS插件缩略图3.8.0.96安装教程

插件下载[名称]:PS插件『缩略图补丁3.8.0.96』[大小]:1.4 MB [语言]:简体中文 [安装环境]:Win7/Win8/Win10[支持版本]:PS CS6—CC2019[32/64位下载链接]:https://pan.baidu.com/s/1AlOlWzMZfYgdJSlZpbQsmw…

z370支持pcie信号拆分吗_定了!AMD B550主板确认将支持PCIE4.0,多项能力接近X570

近日,华擎B550AM Gaming主板照片和文档泄露,Micro-ATX板型、具备4内存插槽,支持PCIE4.0显卡/固态硬盘。B550芯片组本身无法拆分PCIE4.0信道,所以华擎的这张B550主板在搭配第三代锐龙时只有第一条PCIE插槽(通常安装独立显卡)和M.2固…

mac 修改conda镜像 condarc_win10 修改anaconda源

通过 conda config 命令生成配置文件,这里,我们使用清华的镜像:https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/,首先,打开CMD,执行命令:conda config --add channels https://mirro…

倒计时css和js html代码,手把手教你利用CSS和JS创建一个倒数计时器

倒计时功能,在很多地方都会用到,我们平时都习惯去用一些插件来应用,会减少不少的工作量,并且效果也能达到预期。我今天并不是想分享什么倒计时插件,而是自己写一个简单的倒数计时器,有兴趣的同学可以往下看…

空间说说html,空间说说大全(共100句)

1、把眼泪留给最疼你的人,把微笑留给伤你最深的人。2、只要再坚持一下下,我们就能到幸福的彼岸。3、伤害过我的人,我从不让他们好过。4、其实生活很平淡,只是我们自己把它弄得苦不堪言。5、忘记,那么冰凉,绝…

七牛云 转码_七牛云存储 - 七牛 php sdk 上传 转码 问题

实在是不会用 sdk 呀 都蒙圈了求大神 指点vendor(Qiniu.io);vendor(Qiniu.rs);$bucket icunzai-voice;$key $filename;$client new \Qiniu_MacHttpClient(null);$putPolicy new \Qiniu_RS_PutPolicy("$bucket:$key");$putPolicy->CallbackUrl U(/Wechat/Bott…

手机端使用ghelper_Anki手机端使用指南(一)

【本篇会对如何使用手机端anki进行详解】有小伙伴询问在应用商店搜索anki找不到名字叫“anki”的软件,这里解释一下,在手机端的名字和电脑端的名字不太一样。安卓对应的名字叫做AnkiDroidIOS对应的名字叫做Ankimobile不过其实是一个软件,同步…

计算机专业英语词汇mp3,【听单词】计算机专业英语词汇音频106,计算机英语单词MP3...

monitor call instruction n.监督命令描述operator unit console 操作负单元控制台emergency switch 应急开关discontinuous spectrum 不连续频谱critical path scheduling method n.关键路径调度法track centertocenter spacing n.磁道中心矩(磁道中心距)digital computing n.…

python生物数据分析_Python学生物统计-数据可视化-学习笔记5

5.1 作图的重要性在分析一个数据之前, 我们首先要对数据进行检查, 在统计上看一下汇总统计, 比如最大值, 最小值, 中位数, 平均值, 方差, 标准差, 变异系数等等.直方图, 看一下数据的分布情况箱线图, 看一下数据的分布, 有无异常值所谓一图胜千言.python中的作图工具5.2 散点图…