关于Java的正则表达式

xiaoxiao2021-02-28  88

  Java的正则表达式的存在是为了按照某种模式去匹配Java中的一类字符串的公式。他包括普通字符和元字符,普通字符包括字母和数字,元字符则具有某些特殊的含义。正则表达式不管是在.net还是Java平台表达的意思都是一样的。

  以下列出了一些Java中常用的正则表达式的匹配条件:

一个或多个汉字^[\u0391-\uFFE5]+$ 邮政编码^[1-9]\d{5}$QQ号码^[1-9]\d{4,10}$ 邮箱^[a-zA-Z_]{1,}[0-9]{0,}@(([a-zA-z0-9]-*){1,}\.){1,3}[a-zA-z\-]{1,}$ 用户名(字母开头 + 数字/字母/下划线)^[A-Za-z][A-Za-z1-9_-]+$手机号码^1[3|4|5|8][0-9]\d{8}$ URL^((http|https)://)?([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ 18位身份证号^(\d{6})(18|19|20)?(\d{2})([01]\d)([0123]\d)(\d{3})(\d|X|x)?$

那么我们还有两个例子来说明Java正则表达式在Java中对字符串的操作

① 验证邮箱格式是否正确

    String str = "service@xsoftlab.net";

     // 邮箱验证规则      String regEx =  "[a-zA-Z_]{1,}[0-9]{0,}@(([a-zA-z0-9]-*){1,}\\.){1,3}[a-zA-z\\-]{1,}" ;      // 编译正则表达式      Pattern pattern = Pattern.compile(regEx);      // 忽略大小写的写法      // Pattern pat = Pattern.compile(regEx, Pattern.CASE_INSENSITIVE);      Matcher matcher = pattern.matcher(str);      // 字符串是否与正则表达式相匹配      boolean  rs = matcher.matches();      System.out.println(rs); ②在字符串中查询字符串或者字符

    // 要验证的字符串

     String str =  "baike.xsoftlab.net" ;      // 正则表达式规则      String regEx =  "baike.*" ;      // 编译正则表达式      Pattern pattern = Pattern.compile(regEx);      // 忽略大小写的写法      // Pattern pat = Pattern.compile(regEx, Pattern.CASE_INSENSITIVE);      Matcher matcher = pattern.matcher(str);      // 查找字符串中是否有匹配正则表达式的字符/字符串      boolean  rs = matcher.find();      System.out.println(rs); 以上是对正则表达式的理解。

转载请注明原文地址: https://www.6miu.com/read-43800.html

最新回复(0)