java里怎么判断用户输入的手机号是不是合法?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java里怎么判断用户输入的手机号是不是合法?相关的知识,希望对你有一定的参考价值。

Scanner input=new Scanner(System.in);
String phoneNo=input.next();

问题来了,怎么判断phoneNo是否合法?(合法原则:1.以“13、15、18”开头;2.11位(这个已经会了);3.纯数字)
请前辈列出这个问题的正则表达式,如能简单讲解下分别代表什么我会加高分!

如果没有其他要求,下面的就可以
^(13|15|18)\\d9$
表示以13或15或18开头,后面9位数字结尾
public class SortTest
public static void main(String[] args)
String str="13020895785";
System.out.println(str.matches("^(13|15|18)\\d9$"));

参考技术A 那你可以看看帮助文档,使用java 的正则匹配器去匹配所输入的phoneNo的合法性,
用正则的话,比较省代码,而且很精确的,相对也简单一点~

路过~
参考技术B http://www.javaeye.com/topic/199489
看看这个网站,可以学习一下
参考技术C 用正则表达式,简单的一句就可以了,自己学学怎么用吧

java判断日期是不是合法

java判断日期是否合法,不合法以异常抛出

public class DateUtil

private static final SimpleDateFormat dateFormat = null;
static

dateFormat = new SimpleDateFormat("yyyy/MM/dd");
dateFormat.setLenient(false);


public static boolean isValidDate(String s)

try

dateFormat.parse(s);
return true;

catch (Exception e)

// 如果throw java.text.ParseException或者NullPointerException,就说明格式不对
return false;

参考技术A 将用户的输入接收到 String inputDate 中

DateFormat format = DateFormat.getDateInstance();
try
inputDate = format.parse(fireDate);
catch (ParseException e)
System.out.pringln("对不起,您的日期格式错误!");
参考技术B 找个日期输入插件……就不会有不合法的了…… 参考技术C import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;

public class DateTest

public static void main(String[] args)

DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
df.setLenient(false);
try
System.out.println(df.parse("2009-12-20"));
catch (ParseException e)
System.out.println("请正确输入时间!");
e.printStackTrace();



以上是关于java里怎么判断用户输入的手机号是不是合法?的主要内容,如果未能解决你的问题,请参考以下文章

c语言 检查输入是不是合法

JS判断电话/手机的格式是不是正确

java怎么判断输入的字符串是不是为时间格式

java中怎么做到判断输入的日期是不是合法

怎么用ajax和js检验用户名是不是合法和不能为空

java web开发如何实现用用户账号和手机号进行登录?