正则表达式(补充)
来源:互联网 发布:kindle电子书资源 知乎 编辑:程序博客网 时间:2024/05/16 15:26
在做完“ 写一个正则表达式,可以匹配尾号5连的手机号。规则: 第1位是1,第二位可以是数字3458其中之一, 后面4位任意数字,最后5位为任意相同的数字。
* 例如:18601088888、13912366666”这道题后,我又用常规代码做了一次,希望可以得到大家的指教……
如果能不用正则再优化请指教……
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;/** * 9、 写一个正则表达式,可以匹配尾号5连的手机号。规则: 第1位是1,第二位可以是数字3458其中之一, 后面4位任意数字,最后5位为任意相同的数字。 * 例如:18601088888、13912366666 * * @author Administrator * */public class Test9Demo {public static void main(String[] args) throws IOException {while (true) {BufferedReader br = new BufferedReader(new InputStreamReader(System.in));System.out.println("请输入手机号");String num = br.readLine();System.out.println(match(num));}}public static boolean match(String num) {char x = num.charAt(10);if (num.length() == 11) { // 判断是否是11位if (num.startsWith("13") || num.startsWith("14")|| num.startsWith("15") || num.startsWith("18")) { // 判断是否是13,14,15或18开头if (loop(num, x)) { // 判断最后五位是否都一样return true;}}}return false;}public static boolean loop(String num, char x) {String s = num.substring(6, 11);char[] ch = s.toCharArray();for (char cha : ch) {if (cha != x) {// 最后五位有不相同的return false;}}// 最后五位都相同return true;}}
0 0
- 正则表达式(补充)
- 正则表达式使用方法(补充)
- 正则表达式常用(持续补充)
- 正则表达式,从零开始(不断补充)
- 正则表达式补充学习
- 正则表达式补充
- javascript 正则表达式补充
- javascript 正则表达式补充
- 补充正则表达式,和NSRegularExpression
- 常用正则表达式(持续补充
- Java基础--正则表达式补充
- 常见的正则表达式(不足的请补充)
- 禁止表单的自动完成(正则表达式的补充)
- 一些常用的正则表达式(待补充)
- Android中常用的正则表达式(持续补充中)
- Python 正则表达式之 补充学习笔记
- 马士兵 正则表达式的学习(补充)
- (3)正则补充
- 今天开通了博客
- Hive学习之Union和子查询
- iphone、ipod Touch、ipad触屏时的js事件
- 刷卡功能拯救不了微信支付
- eclipse启动调优
- 正则表达式(补充)
- Domino pop3调试参数开启方法
- 雕龙杯Revit中国用户BIM应用大赛开始了真正属于使用者的比赛
- winform进度条使用
- 【Unix/Linux】【命令】【文件,目录操作工具】列出所有子目录与文件——ls (ll)命令
- MyEclipse的junit测试框架
- MySql命令学习
- C++各大有名库的介绍之C++标准库
- 三元组最小距离[阿里2013校招题目]