Android editview 设置只能输入数字、字母和汉字
Android editview 设置只能输入数字、字母和汉字
当处理密码、昵称等特殊情况的时候,往往需要对输入内容加以限制。对于单纯的一种输入法限制可以对键盘和editview熟悉进行控制,而对于多种组合的输入法控制,就可以加入正则来判断。
下边的这个正则是汉字、字母、数字组合,但是不能用数字开头
^[a-zA-Z\u4e00-\u9fa5][a-zA-Z0-9\u4e00-\u9fa5]*$
不限制输入长度
String pas = "^[a-zA-Z0-9\u4e00-\u9fa5]+$";
一个汉字算两个字符的方法:
/**
* 计算位数
* @param str
* @return
*/
public static int calculatePlaces(String str)
{
int m = 0;
char arr[] = str.toCharArray();
for(int i=0;i<arr.length;i++)
{
char c = arr[i];
if((c >= 0x0391 && c <= 0xFFE5)) //中文字符
{
m = m + 2;
}
else if((c>=0x0000 && c<=0x00FF)) //英文字符
{
m = m + 1;
}
}
return m;
}
/**判断输入的合理性*/
private boolean checkPassword(String value) {
if (TextUtils.isEmpty(value)) {
ToastUtils.showToast(this, "请输入昵称");
//CustomProgressDialogUtils.dismissProgressDialog();
return false;
}
String pas = "^[a-zA-Z0-9\u4e00-\u9fa5]{4,16}";
Pattern p = Pattern.compile(pas);
Matcher m = p.matcher(value);
if (!m.matches()) {
ToastUtils.showToast(this, "昵称要求4-16位数字、字母或汉字的组合");
// CustomProgressDialogUtils.dismissProgressDialog();
return false;
}
return true;
}
Android editview 设置只能输入数字、字母和汉字的更多相关文章
- iOS TextField输入限制(限制长度、只能输入数字,只能输入数字字母……)
项目中各个地方都会用到TextField,textField的输入也会有各种需求,各种限制,每次用到的时候要重写一遍这些限制,导致各种垃圾代码,各种重复,有一天,我终于看不下去了,于是把textFie ...
- input只能输入数字字母
<input type='text' onkeyup="this.value=this.value.replace(/[^0-9-]+/,'');" /> 只能输入数字 ...
- android的edittext设置输入限制,只能输入数字
EditText的属性里面已经封装好了相关的设置,上一篇文章里面也提到了,不熟悉的可以去查看上一篇EditText属性大全,这里着重讲输入限制的属性: android:digits="123 ...
- [Android教程]EditText怎样限制用户的输入?数字/字母/邮箱
有输入必有验证.为了防止用户随便输入确保提交数据的合法性,程序不得不在文本输入框(EditText)中增加限制或验证. 关于输入类型有数字.字母.邮箱.电话等形式,这些具体得根据业务来.那么Andro ...
- JS验证只能输入数字,数字和字母等的正则表达式
JS判断只能是数字和小数点 0.不能输入中文1)<input onpaste="return false;" type="text" name=" ...
- js只能输入数字、汉字、字母等正则匹配
只能输英文:<input type="text" onkeyup="value=value.replace(/[^a-zA-Z]/g,'')"> 只 ...
- JS只能输入数字,数字和字母等的正则表达式
1.只能输入英文 <input type="text" onkeyup="value=value.replace(/[^a-zA-Z]/g,'')"> ...
- C#设置textBox只能输入数字(正数,负数,小数)简单实现
/* *设置textBox只能输入数字(正数,负数,小数) */ public static bool NumberDotTextbox_KeyPress(object sender, KeyPres ...
- C# 使用js正则表达式,让文本框只能输入数字和字母,最大长度5位
使用js正则表达式,让文本框只能输入数字和字母,最大长度5位,只需要加个onkeyup事件,即可简单实现 <asp:TextBox ID="txtBegin" runat=& ...
随机推荐
- EL使用:打印集合
<%@page import="java.util.HashMap"%><%@page import="java.util.Map"%> ...
- hdu 1026(Ignatius and the Princess I)BFS
Ignatius and the Princess I Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (J ...
- Oracle分页存储过程
1.在oracle的sqlplus或其他工具中运行一下pl/sql块建立存储过程 --创建包create or replace package testpackage astype test_curs ...
- 架设Web服务器
服务器是网站的灵魂,是打开网站的必要载体.按照体系架构来区分,服务器主要分为非X86服务器.x86服务器.非X86服务器使用RISC(精简指令集)或EPIC(并行指令代码)处理器:X86服务器又称CI ...
- 【如何快速的开发一个完整的iOS直播app】(采集篇)
原文转自:袁峥Seemygo 感谢分享.自我学习 前言 在看这篇之前,如果您还不了解直播原理,请查看这篇文章如何快速的开发一个完整的iOS直播app(原理篇) 开发一款直播app,首先需要采集主 ...
- TCP3次握手和4次挥手
为什么握手是3次,挥手是4次? 因为握手的时候,ACK+SYN可以一起发送,而4次挥手是Server端发送对Client的FIN的ACK后不一定会立即断开连接,需要将ACK和FIN分开发送 为什么TI ...
- Thinkphp Exception捕获异常失败
try catch 比较坑,默认这样是走TP 的错误模板页面 自定义的话: try { } catch ( \Exception $e ) {}加个\
- [PHP] Phalcon应用升级PHP7记录
升级主要有 php7, phalcon, extension 这三个方面工作. [php7] 我选择从 git 中源码包安装,下面是主要安装步骤: git clone -b php- https:// ...
- IOS 支付、性能调试、IPv6兼容支持等
微信支付 支付宝支付 性能调试 IPv6兼容支持 APP引导页框架
- Python的包管理工具Pip (zz )
Python的包管理工具Pip 接触了Ruby,发现它有个包管理工具RubyGem很好用,并且有很完备的文档系统http://rdoc.info 发现Python下也有同样的工具,包括easy_ins ...