正则表达式的使用

简介: 正则表达式的使用

前言

       在网页中,密码输入错误的反馈,可以通过正则表达式来进行实现,正则表达式类似于数学中的公式,程序员根据业务需要,构建好正则表达式的公式,用户输入密码后,经过判断,系统返回布尔值,进行相应的反馈。

一、正则表达式是什么?

       正则表达式是一种用于匹配和操作文本的强大工具,是由一系列字符和特殊字符组成的模式,用于描述要匹配的文本模式。        

       正则表达式可以在文本中查找、替换、提取和验证特定的模式。

二、使用方法

1.正则表达式的使用

      (1)创建 String 类数据 编写正则表达式公式

使用方法:

                               使用方括号括起来若干个字符来表示一个字符,该元字符                                                           可以表示方括号中任何一个字符

    eg:   [^456]                       除456以外的任意字符


                               [a-r]                          代表a~r中任意一个字母


                               [a-zA-Z]                   代表任意一个英文字母


                               [a-e[g-z]]                 代表a~e或g~z中任意字母(并集)


                               [a-o&&[def]]            代表字母 d、e、f(交集)


                               [a-d&&[^bc]]           代表字母a、d(差运算)


                               (ab)|(13)|(50)         代表“ab”、“13”、“50”任意一个值

正则表达式限定符

限定修饰符 意义 示例
? 0或1次 A?
* 0或多次 A*
+ 0或多了几次 A+7
{n} 正好出现n次 A{n}
{n,} 至少出现n次 A{n,}
{n,m} 出现 n 次至 m 次 A{n,m}
&& 和(交集) A&&B
| A|B
+ 连接符 A+B

正则表达式元字符

元字符 正则表达式中的写法 意义
. “.” 代表任意一个字符
d "\\d" 代表0~9的任何一个数字
\D "\\D" 代表任何一个非数字字符
\s "\\s" 代表空白字符,如“\t”、“\n”
\S "\\S" 代表非空白字符
\w "\\w" 代表可用作标识符的字符,但不包括“$”
\W "\\W" 代表不可用于标识符的字符

   (2)使用matches()方法 检测某字符串是否满足给定的正则表达式,返回布尔值

2.实操展示

        示例1:

               使用正则表达式判断 号码是否为手机号(总共十一位)

import java.util.Scanner;
class regex{
  public static void main(String[] args) {
    Scanner scan = new Scanner(System.in);
    for(int i=0;i<5;i++) {
      System.out.println("请输入您的手机号码");
      String phone = scan.nextLine();
      String regex = "13[0-9]\\d{8}|15[012356789]\\d{8}|18[056789]\\d{8}";
      if(phone.matches(regex)) {
        System.out.println("该号码是手机号");
        System.out.println("--------------");
      }else {
        System.out.println("该号码不是手机号");
        System.out.println("--------------");
      }
    }
    scan.close();
  }
}

正则表达式 13\\d{9}|15[012356789]\\d{8}|18[056789]\\d{8}


               第一种电话格式:开头两位为13 再加上九位的随机数字


                                            eg:13012345678


               第二种电话格式:开头两位为15 第三位为除了4以外的数字 再加上八位的随机数字


                                            eg:15012345678


               第三种电话格式:开头两位为18 第三位为除了1234以外的数字 再加上八位的随机数字


                                            eg:18056789097

       示例2:

               使用正则表达式判断 指定变量是否是合法的 E-mail邮箱地址

import java.util.Scanner;
class regex{
  public static void main(String[] args) {
    Scanner scan = new Scanner(System.in);
    for(int i=0;i<5;i++) {
      System.out.println("请输入您的邮箱地址");
      String phone = scan.nextLine();
      String regex = "\\w+@+\\w+(\\.\\w{2,3})*";
      if(phone.matches(regex)) {
        System.out.println("该邮箱是邮箱地址");
        System.out.println("--------------");
      }else {
        System.out.println("该邮箱不是邮箱地址");
        System.out.println("--------------");
      }
    }
    scan.close();
  }
}

    正则表达式 \\w+@+\\w+(\\.\\w{2,3})*+\\.\\w{2,3}


               解释:    除了$的所有符号(不限个数)+@+ 除了$的所有符号(不限个数)+ .+除了$的所有符号(2-3个)  


                注:括号中的内容为一个整体,* 号让这个整体,可以出现0或无数次          


总结

       以上就是正则表达式的简单介绍,本文仅仅简单介绍了正则表达式的使用,而正则表达式提供了能使我们校对数据,判断密码,设计权限范围的能力。

目录
打赏
0
0
0
0
2
分享
相关文章
公众号爆文仿写RPA机器人,采集,仿写,发布一条龙服务
公众号爆文仿写RPA机器人,采集,仿写,发布一条龙服务
709 1
GPIO子系统驱动程序 【ChatGPT】
GPIO子系统驱动程序 【ChatGPT】
企业出海合规:如何区分数据控制者与数据处理者
数据控制者是确定个人数据处理目的和方式的实体,负有最大责任,需保护数据主体的隐私。数据处理者是按照控制者指示处理个人数据的实体,负责数据安全和协助控制者履行职责。两者需通过明确的合同规定责任。数据控制者的职责包括确定目的、获得同意、确保安全、提供透明度、促进权利行使、进行DPIA和建立协议。数据处理者负责按指示处理数据、确保安全和保密、协助控制者、处理数据泄露通知、数据删除和遵守法律。
678 0
|
11月前
|
Java中防止压缩炸弹的技术分享
【8月更文挑战第17天】在软件开发和数据处理的日常工作中,我们经常会遇到各种压缩文件。然而,一种被称为“压缩炸弹”的恶意文件却给开发者带来了不小的困扰。压缩炸弹通过特殊设计的压缩算法,使得极小的文件在解压后能膨胀到异常巨大的体积,从而消耗大量系统资源甚至导致系统崩溃。本文将围绕“如何在Java中防止压缩炸弹”这一主题,分享一些实用的技术干货。
366 0
使用阿里云RPA变量的一些基本步
【2月更文挑战第8天】使用阿里云RPA变量的一些基本步
629 2
【专栏】阿里云RPA的Rap程序是自动化流程脚本,基于AI和机器学习,实现业务流程自动化
【4月更文挑战第29天】阿里云RPA的Rap程序是自动化流程脚本,基于AI和机器学习,实现业务流程自动化。具有灵活性、易用性、高效稳定和智能学习等特点。广泛应用于财务、人力资源、客服和供应链等领域,未来将与AI深度融合,跨平台应用,行业定制化,并构建完善生态,助力企业效率提升和创新。
1141 2
ensp中PPP(点对点协议)中的PAP认证 原理和配置命令
ensp中PPP(点对点协议)中的PAP认证 原理和配置命令
513 0
【专栏】阿里云RPA浏览器自动化插件是一款基于AI的创新工具
【4月更文挑战第29天】阿里云RPA浏览器自动化插件是一款基于AI的创新工具,能模拟浏览器操作,实现自动化业务流程,提升效率,降低成本。其特点包括强大的自动化能力、智能识别处理、灵活定制、稳定性能及安全保障。适用于数据采集、表单填写、网页测试、办公自动化和电商运营等场景,助力企业数字化转型。
1094 5
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等