如何鉴别非法的电话号码
【实例描述】
日常生活中经常需要用户录入用户信息或联系方式,其中有一些数组的格式是固定的,程序处理逻辑也是按照这个格式来实现的,但是由于用户输入的是字符串,其灵活性较大,所以容易输入错误格式的数据。本实例将演示如何使用正则表达式来确定输入的电话号码格式是否匹配,实例的运行效果如图4.15 所示。
【实现过程】
(1)在Eclipse 中新建项目PhoneNumber,并在其中创建一个PhoneNumber.java 文件。在该类的主方法中创建标准输入流的扫描器对象,接收用户输入的用户信息。核心代码如下所示:
protected void do_button_actionPerformed(ActionEvent e) {
String text = phoneNumField.getText(); // 获取用户输入
String info = check(text); // 对输入文本进行IP
验证
showMessageDialog(null, info); // 用对话框输出验证结
果
}
(2)然后对电话号码的正确性进行验证,首先判断字符串是否为空,然后再通过正则表达式对字符串进行验证。这里要注意我们设定的区号为3 位,电话号码为8 位。核心代码如下所示:
public String check(String text){
if(text == null || text.isEmpty()){
return "请输入电话号码!";
}
// 定义正则表达式
String regex = "^\\d{3}-?\\d{8}|\\d{4}-?\\d{8}$";
// 判断输入数据是否为电话号码
if(text.matches(regex)){
return text + "\n 是一个合法的电话号码!";
}else{
return text + "\n 不是一个合法的电话号码!";
}
}
【代码解析】
本实例使用正则表达式对电话号码进行了格式匹配验证。正则表达式通常被用于判断语句中,来检查某一字符串是否满足某一格式。它是含有一些特殊意义字符的字符串,这些特殊字符称为正则表达式的元字符。正则表达式中的元字符及其意义如表4-1 所示。
【知识扩展】
一个Java 对象(字符串也是Java 对象)必须先初始化才能使用,否则编译器会报告“使用的变量未初始化”错误。
【免责声明】本文部分系转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,如涉及作品内容、版权和其它问题,请在30日内与我们联系,我们会予以重改或删除相关文章,以保证您的权益!
Java开发高端课程免费试学
大咖讲师+项目实战全面提升你的职场竞争力
- 海量实战教程
- 1V1答疑解惑
- 行业动态分析
- 大神学习路径图
相关推荐
更多2015-10-22
2015-10-22
2015-10-22
达内就业喜报
更多>Java开班时间
-
北京 丨 11月27日
火速抢座 -
上海 丨 11月27日
火速抢座 -
广州 丨 11月27日
火速抢座 -
兰州 丨 11月27日
火速抢座 -
杭州 丨 11月27日
火速抢座 -
南京 丨 11月27日
火速抢座 -
沈阳 丨 11月27日
火速抢座 -
大连 丨 11月27日
火速抢座 -
长春 丨 11月27日
火速抢座 -
哈尔滨 丨 11月27日
火速抢座 -
济南 丨 11月27日
火速抢座 -
青岛 丨 11月27日
火速抢座 -
烟台 丨 11月27日
火速抢座 -
西安 丨 11月27日
火速抢座 -
天津 丨 11月27日
火速抢座 -
石家庄 丨 11月27日
火速抢座 -
保定 丨 11月27日
火速抢座 -
郑州 丨 11月27日
火速抢座 -
合肥 丨 11月27日
火速抢座 -
太原 丨 11月27日
火速抢座 -
苏州 丨 11月27日
火速抢座 -
武汉 丨 11月27日
火速抢座 -
成都 丨 11月27日
火速抢座 -
重庆 丨 11月27日
火速抢座 -
厦门 丨 11月27日
火速抢座 -
福州 丨 11月27日
火速抢座 -
珠海 丨 11月27日
火速抢座 -
南宁 丨 11月27日
火速抢座 -
东莞 丨 11月27日
火速抢座 -
贵阳 丨 11月27日
火速抢座 -
昆明 丨 11月27日
火速抢座 -
洛阳 丨 11月27日
火速抢座 -
临沂 丨 11月27日
火速抢座 -
潍坊 丨 11月27日
火速抢座 -
运城 丨 11月27日
火速抢座 -
呼和浩特丨11月27日
火速抢座 -
长沙 丨 11月27日
火速抢座 -
南昌 丨 11月27日
火速抢座 -
宁波 丨 11月27日
火速抢座 -
深圳 丨 11月27日
火速抢座 -
大庆 丨 11月27日
火速抢座