常用的正则表达式实例整理

针对“常用的正则表达式实例整理”,我会从以下几个方面来详细讲解:

  1. 什么是正则表达式?
  2. 常用的正则表达式实例整理
  3. 示例说明
  4. 如何测试正则表达式的匹配效果?

什么是正则表达式?

正则表达式是用于模式匹配的一个工具,它可以在文本中搜索指定的模式并进行各种操作。使用正则表达式可以快速检索文本,替换文本中的一些特定内容,或者验证表单的输入等等。

常用的正则表达式实例整理

下面列出了一些常见的正则表达式实例:

  1. 匹配数字:^\d+$
  2. 匹配邮箱:^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+$
  3. 匹配网址:^((http|https)://)?[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+([a-zA-Z0-9_-.,@?^=%&:/~+#]*[a-zA-Z0-9_-@?^=%&/~+#])?$
  4. 匹配 IP 地址:^(25[0-5]|2[0-4][0-9]|[1]?[1-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[1]?[1-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[1]?[1-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[1]?[1-9][0-9]?)$
  5. 匹配用户名:^[a-zA-Z]\w{5,17}$
  6. 匹配手机号码:^1([3456789])\d{9}$
  7. 匹配密码:^[a-zA-Z]\w{5,17}$
  8. 匹配日期(1990-01-01 ~ 2022-12-31):^(199\d|20[01]\d|202[0-2])-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])$

示例说明

以匹配数字为例,^\d+$表示以数字开头,以数字结尾,中间包含任意个数字。其中,^表示开头,\d表示一个数字,+表示出现一次或多次,$表示结尾。

另外,以匹配手机号码为例,^1([3456789])\d{9}$表示以“1”开头,第二位是3、4、5、6、7、8、9中的一个,后面接任意9位数字。其中,括号内的内容是一个分组,\d表示一个数字,{9}表示出现9次。

具体每个符号的含义可以参考 正则表达式常用符号及含义

如何测试正则表达式的匹配效果?

可以使用在线工具或者编程语言提供的正则表达式相关函数来测试,下面以使用 JavaScript 的 match() 函数测试为例:

let str = "my phone number is 18888888888.";
let pattern = /^1([3456789])\d{9}$/;
console.log(str.match(pattern));

上述测试代码中,将正则表达式赋给 pattern 变量,使用 match() 函数测试 str 字符串是否符合 pattern 的要求,输出结果为 ["18888888888", "8", index: 20, input: "my phone number is 18888888888.", groups: undefined] 表示匹配成功,匹配到的字符串为 18888888888,分组匹配到的字符串为 8,匹配到的字符串位于 str 的第20个位置。可以通过 return 的值是否为 null 来判断匹配是否合法。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:常用的正则表达式实例整理 - Python技术站

(0)
上一篇 2023年6月9日
下一篇 2023年6月9日

相关文章

  • Vue内置组件Teleport的使用

    当我们在开发Vue应用时,可能遇到需要将一个组件移动到DOM树的另一个位置的场景,这时候我们就可以使用Vue 3.0中新增的Teleport内置组件来实现。 Teleport组件 Vue 3.0中新增了Teleport组件,用来将一个组件的内容移动到指定的DOM元素处,从而解决了父组件限制了子组件的显示位置的问题。 基本用法 首先,在需要挪动的组件中,我们需…

    css 2023年6月10日
    00
  • Bootstrap栅格系统的使用详解

    下面我来为您介绍一篇关于Bootstrap栅格系统使用的详细攻略。 1. 什么是Bootstrap栅格系统 Bootstrap 栅格系统是一个响应式、移动设备优先的流式格系统,它用于页面布局,具有以下特性: 支持多种设备(如手机、平板、桌面电脑); 网格布局(12个网格列,通过媒体查询实现不同的排版); 预定义好了多种布局类型(如:嵌套、等宽、偏移、反向布局…

    css 2023年6月10日
    00
  • 关于css设置层透明

    设置层透明可以使用CSS3中的opacity属性或RGBA颜色值,以下是详细的攻略: 使用opacity属性设置层透明 opacity的范围为0到1,0表示完全透明,1表示完全不透明。可以将opacity属性应用于想要设置透明度的HTML元素的样式中,如下示例: div { background-color: #000; opacity: 0.5; } 以上…

    css 2023年6月9日
    00
  • 清理CSS样式的几个有用工具

    清理CSS样式是Web开发过程中非常重要的一步,可以有效地减少代码冗余,提高网页加载速度和性能。以下将介绍几个常用的CSS样式清理工具,帮助我们快速、简单地清理CSS样式。 1. CSS Purge CSS Purge是一款小巧、简单的CSS样式清理工具,用来删除未使用的CSS。实现原理是通过解析HTML文件,在运行时分析CSS文件中的选择器和样式规则,然后…

    css 2023年6月9日
    00
  • 纯CSS免费让网站拥有暗黑模式切换功能的实现代码

    给您讲解一下“纯CSS免费让网站拥有暗黑模式切换功能的实现代码”的完整攻略。 1. CSS变量 要实现暗黑模式切换,首先需要了解CSS变量。CSS变量是在CSS中定义的,可以在整个文档中重复使用的值。在实现暗黑模式切换中,可以使用CSS变量来定义肌肤颜色。 在CSS中,使用–来定义变量,使用var()来引用变量。例如: :root { –bg-color…

    css 2023年6月9日
    00
  • ThinkPHP5 的简单搭建和使用详解

    ThinkPHP5 的简单搭建和使用详解 简介 ThinkPHP5是一款开源、快速、自由、简单的面向对象的轻量级PHP开发框架,采用了全新的架构和设计理念,符合PSR标准,核心功能包括路由、请求与响应、控制器、模型、视图等。 环境搭建 安装配置PHP环境(版本要求PHP 5.4 以上) 下载ThinkPHP5框架并解压到指定目录。 设置项目虚拟主机。 MVC…

    css 2023年6月9日
    00
  • 用CSS样式生成搜索、购物车等图标样式(图标字体库)

    下面是详细讲解“用CSS样式生成搜索、购物车等图标样式(图标字体库)”的完整攻略: 什么是图标字体库 图标字体库是指一些以字体文件形式储存的图标集合,其将一些常用的图标以字体的形式嵌入到网页中,从而实现用CSS样式生成搜索、购物车等图标样式。 如何使用图标字体库 使用图标字体库一般有以下几个步骤: 1. 下载需要的图标字体库 常用的图标字体库有FontAwe…

    css 2023年6月9日
    00
  • 使用Java和WebSocket实现网页聊天室实例代码

    下面我为你详细讲解如何使用Java和WebSocket实现网页聊天室的攻略。整个过程分为以下步骤: 步骤一:准备工作 在开始操作之前,我们需要确定需求和相关技术组件。首先,需要了解WebSockets和Java有关的技术组件,包括: JavaSE 8及以上 Maven或Gradle构建工具 WebSocket API和相关实现(Tomcat或Glassfis…

    css 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部