对11位手机号进行3-4-4格式化
public class PhoneNumFormatUtil {public static void phoneNumFormat(final EditText editText) {editText.addTextChangedListener(new TextWatcher() {int beforeTextLength = 0;int onTextLength = 0;boolean isChanged = false;int location = 0; // 记录光标的位置private char[] tempChar;private StringBuffer buffer = new StringBuffer();int konggeNumberB = 0;public void onTextChanged(CharSequence s, int start, int before,int count) {// TODO Auto-generated method stubonTextLength = s.length();buffer.append(s.toString());if (onTextLength == beforeTextLength || onTextLength <= 3|| isChanged) {isChanged = false;return;}isChanged = true;}public void beforeTextChanged(CharSequence s, int start, int count,int after) {// TODO Auto-generated method stubbeforeTextLength = s.length();if (buffer.length() > 0) {buffer.delete(0, buffer.length());}konggeNumberB = 0;for (int i = 0; i < s.length(); i++) {if (s.charAt(i) == ' ') {konggeNumberB++;}}}public void afterTextChanged(Editable s) {// TODO Auto-generated method stubif (isChanged) {location = editText.getSelectionEnd();int index = 0;while (index < buffer.length()) {if (buffer.charAt(index) == ' ') {buffer.deleteCharAt(index);} else {index++;}}index = 0;int konggeNumberC = 0;while (index < buffer.length()) {if ((index == 3 || index == 8)) {buffer.insert(index, ' ');konggeNumberC++;}index++;}if (konggeNumberC > konggeNumberB) {location += (konggeNumberC - konggeNumberB);}tempChar = new char[buffer.length()];buffer.getChars(0, buffer.length(), tempChar, 0);String str = buffer.toString();if (location > str.length()) {location = str.length();} else if (location < 0) {location = 0;}editText.setText(str);Editable etable = editText.getText();Selection.setSelection(etable, location);isChanged = false;}}});} }
转载于:https://www.cnblogs.com/rh1910362960/p/4250323.html
对11位手机号进行3-4-4格式化相关推荐
- python手机号替换_转--Python re模块 验证11位手机号
一.常用正则表达式符号和语法: '.' 匹配所有字符串,除\n以外 '-' 表示范围[0-9] '*' 匹配前面的子表达式零次或多次.要匹配 * 字符,请使用 \*. '+' 匹配前面的子表达式一次或 ...
- 如何用正则验证手机号?11位手机号用正则这样写即可!
let num = 13456782222;let aa = /^1[35789]\d{9}$/;console.log(aa.test(num)) 以1开头,第二位是35789中的任意一位,以9位数 ...
- 验证手机,电话的正则表达式(11位手机号,4位区号,3位区号,7位或者8位手机号码)...
电话号码正则表达式(支持手机号码,3-4位区号,7-8位直播号码,1-4位分机号) ((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3} ...
- java验证11位手机号_JAVA怎样用数组实现输入手机号码为11位
展开全部 顺手写了32313133353236313431303231363533e58685e5aeb931333332633636个,看下是不是你想要的.public class T4 { Str ...
- [转载]正则验证11位手机号
function isPoneAvailable($poneInput) { var myreg=/^[1][3,4,5,7,8][0-9]{9}$/; if (!myreg.test($poneIn ...
- el-input输入11位手机号,边输入边验证手机号码格式
喉咙痛-不多说,直接上码 den-gdeng-不对,喉咙痛和打字什么关系- 哎-反正多写也无益,少写也许喉咙就好了呢- <template><el-form :rules=" ...
- JS实现电话号码校验-----座机:区号-号码、或11位手机号
在公司做个前端网页,在联系电话的输入框,现在符合条件的才能录入,经测试可用 function isPhoneNum(phone){var testPhone=/^(1(?:3\d|4[4-9]|5[0 ...
- 输入框输入手机号,中间插入空格格式化,且限制11位
<!DOCTYPE html> <html> <head><title>输入手机号限制长度和增加空格示例</title><script ...
- 判断是否是标准手机号:1开头,长度11位的纯数字
public static void main(String[] args) {//手机号:1开头,长度11位的纯数字Scanner sc = new Scanner(System.in);Syste ...
最新文章
- 配置LYNC和Exchange 2010 SP1 OWA集成
- 在Win8中创建热点,共享网络
- Java Web(5) Spring 下使用Junit4 单元测试
- 基于OWL-S的Web服务质量本体的描述模式的设计(转)
- Python格式化字符串f-string常用用法
- 非空验证方法(多值)和BindingResult提示验证信息
- 跳转点算法_跳转搜索算法介绍
- Hibernate的执行流程——SessionFactory的创建
- 初识ObjectBox--Android平台
- hibernate 如何安装_python如何搭建WEB服务?
- 联想ih81m主板说明书_一体化折叠设计将便捷进行到底!联想ThinkVision 便携显示器评测...
- 主板检测卡c5_主板诊断卡怎么使用 主板诊断卡代码含义及处理方法
- Macbook Pro 安装 win10 单操作系统
- matlab幻方置乱,幻方置乱,magic scrambling,音标,读音,翻译,英文例句,英语词典
- 要求返回三位数中的水仙花数 ,数字范围在100-999中。(水仙花数:百位数的3次方+十位数的3次方+个位数的三次方=数字本身)
- 【重识前端】闭包与模块
- 阿里云年中618钜惠都有哪些活动-详细的为你列举
- input标签绑定click事件无反应
- php xmp,在jpeg中编写XMP元数据(使用PHP) – 使用单个或多个rdf:描述块
- Java-集合当中进行模糊查找
热门文章
- servlet和filter的区别
- 产品经理必须要了解的经济学原理--“口红效应”
- 文明重启服务器维护怎么卡进去,文明重启更新之后进不去,具体玩法介绍
- 多层陶瓷电容器用处_陶瓷材料|MLCC片式多层陶瓷电容器应用及制作工艺介绍...
- Apache2.4开启php
- C#23中设计模型UML图
- C#Winform怎么让控件随着主界面大小变化
- 剑指offer 合并2个排序的链表
- python科学计算笔记(九)pandas中DataFrame数据操作函数
- spark中使用categoricalFeaturesInfo来标记分类型变量