Java正则表达式匹配电话格式_java

大家都知道,正则表达式是一种可以用于模式匹配和替换的规范,一个正则表达式就是由普通的字符(例如字符a到z)以及特殊字符(元字符)组成的文字模式,它用以描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。

/**
   * 手机号:目前全国有27种手机号段。
   * 移动有16个号段:134、135、136、137、138、139、147、150、151、152、157、158、159、182、187、188。其中147、157、188是3G号段,其他都是2G号段。
   * 联通有7种号段:130、131、132、155、156、185、186。其中186是3G(WCDMA)号段,其余为2G号段。
   * 电信有4个号段:133、153、180、189。其中189是3G号段(CDMA2000),133号段主要用作无线网卡号。
   * 150、151、152、153、155、156、157、158、159 九个;
   * 130、131、132、133、134、135、136、137、138、139 十个;
   * 180、182、185、186、187、188、189 七个;
   * 13、15、18三个号段共30个号段,154、181、183、184暂时没有,加上147共27个。
   */
  private boolean telCheck(String tel){
    Pattern p = Pattern.compile("^((13\\d{9}$)|(15[0,1,2,3,5,6,7,8,9]\\d{8}$)|(18[0,2,5,6,7,8,9]\\d{8}$)|(147\\d{8})$)");
    Matcher m = p.matcher(tel);
    return m.matches();
  }

Java正则表达式验证格式(邮箱、电话号码)

package com.firewolf.utils;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
 * 使用正则表达式验证输入格式
 * @author liuxing
 *
 */
public class RegexValidateUtil {
  public static void main(String[] args) {
    System.out.println(checkEmail("14_8@qw.df"));
    System.out.println(checkMobileNumber("071-3534452"));
  }
  /**
   * 验证邮箱
   * @param email
   * @return
   */
  public static boolean checkEmail(String email){
    boolean flag = false;
    try{
        String check = "^([a-z0-9A-Z]+[-|_|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$";
        Pattern regex = Pattern.compile(check);
        Matcher matcher = regex.matcher(email);
        flag = matcher.matches();
      }catch(Exception e){
        flag = false;
      }
    return flag;
  }
  /**
   * 验证手机号码
   * @param mobiles
   * @return
   */
  public static boolean checkMobileNumber(String mobileNumber){
    boolean flag = false;
    try{
        Pattern regex = Pattern.compile("^(((13[0-9])|(15([0-3]|[5-9]))|(18[0,5-9]))\\d{8})|(0\\d{2}-\\d{8})|(0\\d{3}-\\d{7})$");
        Matcher matcher = regex.matcher(mobileNumber);
        flag = matcher.matches();
      }catch(Exception e){
        flag = false;
      }
    return flag;
  }
}

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索java正则表达式匹配、java正则表达式匹配点、java正则表达式匹配ip、java中匹配正则表达式、java正则表达式全匹配,以便于您获取更多的相关知识。

时间: 2025-01-20 11:02:42

Java正则表达式匹配电话格式_java的相关文章

字符串-java正则表达式匹配数字

问题描述 java正则表达式匹配数字 G3811/ G3885/ G655/l G030/l G3849/ G0150/ G5292/ G955/l G025/l G5300/ 这是控制台输出的字符串,但是我只想要他的数字 怎么匹配 解决方案 Pattern p = Pattern.compile("[0-9]"); Matcher m = p.matcher(elem.attr("abs:href").substring(22, 28)); while (m.fi

java正则表达式匹配问题

问题描述 java正则表达式匹配问题 我现在有一个字符串 String str= "[权利要求 5] 如权利要求 4所述 的墨盒 ,其特征在于 :" 想要提取到第几号权力要求 Pattern p = Pattern.compile("^[权利要求 (d)]"); Matcher m = p.matcher(str); if(m.find()){ System.out.println("["+m.group()+"]"); }

正则表达式匹配指定格式

问题描述 正则表达式匹配指定格式 内容&内容%内容&日期&内容%内容这个正则表达式如何匹配? 解决方案 内容&内容%内容&(((?!0000)[0-9]{4}-((0[1-9]|1[0-2])-(0[1-9]|1[0-9]|2[0-8])|(0[13-9]|1[0-2])-(29|30)|(0[13578]|1[02])-31)|([0-9]{2}(0[48]|[2468][048]|[13579][26])|(0[48]|[2468][048]|[13579][2

java正则表达式验证工具类_java

分享一个用正则表达式校验电话号码.身份证号.日期格式.URL.Email等等格式的工具类 复制代码 代码如下: package com.eabax.util; import java.util.regex.Matcher;  import java.util.regex.Pattern;  /**  * 验证工具类  * @author admin  *  */ public class Validation {      //------------------常量定义      /**   

java正则表达式匹配斜杠

在正则表达式里面匹配一个斜杠,需要用4个斜杠: Java代码 import java.util.regex.Matcher; import java.util.regex.Pattern; public class test { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub String textString = new String ("\\\&q

java正则表达式匹配网页所有网址和链接文字的示例_java

复制代码 代码如下: import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.net.MalformedURLException;import java.net.URL;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.

关于java正则表达式匹配url

问题描述 Pattern pattern=Pattern.compile(正则表达式); Matcher m=pattern.matcher("http://www.123.com/234/333.html"); //除中文不用外,其他的都要 if(m.find()){System.out.println(m.find());System.out.println(m.start()); System.out.println(m.end()); System.out.println(m.

java 正则表达式匹配

问题描述 需要匹配的文本内容形如:words,"Reference": ["""words""","""words""","""words"""] wordswords中可能包含任意字符,但不包含三引号.我需要抽取[]中的内容,代码如下,结果是没有匹配reg = ""Reference&q

Java 正则表达式匹配模式(贪婪型、勉强型、占有型)

Greediness(贪婪型):最大匹配 X?.X*.X+.X{n,} 是最大匹配.例如你要用 "<.+>" 去匹配 "a<tr>aava </tr>abb",也许你所期待的结果是想匹配 "<tr>",但是实际结果却会匹配到 "<tr>aava </tr>. 在 Greediness 的模式下,会尽量大范围的匹配,直到匹配了整个内容,这时发现匹配不能成功时,开始回退