/*正则表达式-匹配
正则表达式:符合一定规则的而表达式.
作用:用于专门操作字符串。
特点:用于一些特定的符号来表示一些代码操作。这样就简化书写。
所以学习正则表达式
好处:可以简化对字符串的复杂操作。
具体操作功能:
1,匹配:String matches()方法.用规则整个字符串,只要有一处不符合规则,就匹配结束,返回flase
*/
class RegexDemo
{
public static void main(String[] args)
{
demo();
checkTel();
}
/*
匹配
手机号段只有 13xxx 15xxx 18xxx
*/
public static void checkTel()
{
String tel = "13900001111";
String telReg = "1[358]\\d{9}";
System.out.println(tel.matches(telreg));
}
public static void demo()
{
String str = "a";
String reg = "[bcd]";
boolean b = str.matches(reg);
System.out.println(b);
}
public static void cheQQ()
{
String qq = "1882345";
String regex = "[1-9]\\d{4,14}";
boolean flag = qq.matches(regex);//String的匹配regex方法
if (flag)
System.out.println(qq+"..is ok");
else
System.out.println(qq+"..is 错误的");
}
/*
对QQ号码进行校验
要求:5-15 0不能开头,只能是数字
这种方式,使用了String类中的方法,进行组合完成了需求,但是代码过于复杂。
*/
public static void checQQ_1()
{
String qq = "";
int len = qq.length();
if (len>=5 && len<=15)
{
if (!qq.startsWith("0"))//Integer.parseInt("23c");NumberFormatException
{
try
{
long l = Long.parseLong(qq);
System.out.println("qq:"+l);
}
catch (NumberFormatException e)
{
System.out.println("出现非法字符");
}
/*char[] arr = qq.toCharArray();
boolean flag = true;
for (int x = 0; x<arr.length;x++ )
{
if (!(arr[x]>='0' && arr[x]<='9'))
{
flag = false;
break;
}
if (flag)
{
System.out.println("qq:"+qq);
}
else
{
System.out.println("出现非法字符");
}*/
}
}
else
{
System.out.println("不可以0开头");
}
}
else
{
System.out.println("长度错误");
}
}
}
正则表达式-匹配
最新推荐文章于 2023-02-10 13:46:37 发布