常用正则表达式

2023-11-01

正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。

匹配中文字符的正则表达式: [\u4e00-\u9fa5]
评注:匹配中文还真是个头疼的事,有了这个表达式就好办了

匹配双字节字符(包括汉字在内):[^\x00-\xff]
评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

匹配空白行的正则表达式:\n\s*\r
评注:可以用来删除空白行

匹配HTML标记的正则表达式:<(\S*?)[^>]*>.*?</\1>|<.*? />
评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力

匹配首尾空白字符的正则表达式:^\s*|\s*$
评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式

匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
评注:表单验证时很实用

匹配网址URL的正则表达式:[a-zA-z]+://[^\s]*
评注:网上流传的版本功能很有限,上面这个基本可以满足需求

匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
评注:表单验证时很实用

匹配国内电话号码:\d{3}-\d{8}|\d{4}-\d{7}
评注:匹配形式如 0511-4405222 或 021-87888822

匹配腾讯QQ号:[1-9][0-9]{4,}
评注:腾讯QQ号从10000开始

匹配中国邮政编码:[1-9]\d{5}(?!\d)
评注:中国邮政编码为6位数字

匹配身份证:\d{15}|\d{18}
评注:中国的身份证为15位或18位

匹配ip地址:\d+\.\d+\.\d+\.\d+
评注:提取ip地址时有用

匹配特定数字:
^[1-9]\d*$    //匹配正整数
^-[1-9]\d*$   //匹配负整数
^-?[1-9]\d*$   //匹配整数
^[1-9]\d*|0$  //匹配非负整数(正整数 + 0)
^-[1-9]\d*|0$   //匹配非正整数(负整数 + 0)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$   //匹配正浮点数
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$  //匹配负浮点数
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$  //匹配浮点数
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$   //匹配非负浮点数(正浮点数 + 0)
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$  //匹配非正浮点数(负浮点数 + 0)
评注:处理大量数据时有用,具体应用时注意修正

匹配特定字符串:
^[A-Za-z]+$  //匹配由26个英文字母组成的字符串
^[A-Z]+$  //匹配由26个英文字母的大写组成的字符串
^[a-z]+$  //匹配由26个英文字母的小写组成的字符串
^[A-Za-z0-9]+$  //匹配由数字和26个英文字母组成的字符串
^\w+$  //匹配由数字、26个英文字母或者下划线组成的字符串
评注:最基本也是最常用的一些表达式

例如:邮箱表达式

/^w+@\w+(\.[a-zA-Z]{2,3}){1,2}$/

解释意思
2、表示解释
1)符号^
表示以什么开头
 
2)符号\w
表示一个字符(包括大小写字母和数字)
 
3)符号\w+
后面接一个加号+,表示一个或者多个字符
 
4)符号^\w+
连起来就是,以一个或多个字符开头
 
5)符号@
就是单纯表示需要匹配一个@符号
 
6)符号^\w+@
连起来的意思就是,以一个或多个字符开头,并且字符后面的字符必须是@字符
比如:假如开头只有一个字符a,那么第二个字符肯定就是@字符
假如开头只有abc三个字符,那么abc后面接着的字符肯定是@字符,否则匹配无效
 
7)括号
():括号,提取匹配字符串,也表示括号内的一组表达式
[]:中括号,匹配字符串范围,比如 \s{3} 表示匹配三个空格,\s[1,3]表示匹配一到三个空格
{}:花括号,匹配长度,[0-9]{0,9} 表示长度为 0 到 9 的数字字符串
 
8)符号\.
就是单纯的表示需要匹配的小数点,加斜杠目的就是为了转义
 
9)符号[a-zA-Z]
表示匹配字符范围为小写字母a到z,A到Z
 
10)符号[a-zA-Z]{2,3}
表示匹配2位或者3位大小写字母a~z或A~Z的字符,比如:cn、com
 
11)符号(\.[a-zA-Z]{2,3})
结合起来意思就是,小数点后面接的字符肯定是大小写字母范围,并且长度为2或者3位,其他长度则匹配无效
 
12)符号$
以什么字符结尾,比如:[a-z]$,以小写字母结尾,其他字符结尾则匹配无效
 
13)符号(\.[a-zA-Z]{2,3}){1,2}$
连起来就是,括号内的情况能出现1次或者2次,比如:.com.cn

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

常用正则表达式 的相关文章

  • 去除多余的0;正则表达式:去掉数字(整数、小数)前面多余的零

    方案1 来源 http zhidao baidu com question 277893180 html 如果是整数 去掉整数前的零 例如 0098765 gt 98765 如果是小数 去掉小数前的零 例如 000 333 gt 0 333
  • Shell中正则表达式

    1 正则表达式介绍 1 正则表达式 通常用于判断语句中 用来检查某一字符串是否满足某一格式 2 正则表达式是由普通字符与元字符组成 3 普通字符包括大小写字母 数字 标点符号及一些其他符号 4 元字符是指在正则表达式中具有特殊意义的专用字符
  • 用Matlab作函数的图像

    函数简介 1 作图函数是plot 其调用格式如下 plot y plot x y plot x y LineSpec plot x1 y1 s1 x2 y2 s2 x3 y3 s3 说明 1 plot y 绘出以向量y为纵坐标 y的个元素的
  • Android 正则表达式- 只保留字母数字

    正则表达式是对字符串操作的一种逻辑公式 就是用事先定义好的一些特定字符 及这些特定字符的组合 组成一个 规则字符串 这个 规则字符串 用来表达对字符串的一种过滤逻辑 1 匹配字母 大写 小写 和数字的字符 正则表达式 a zA Z0 9 2
  • 常用数字电路模块之三:计数器与分频器(二))

    三 分频电路 1 简单的计数器 计数器实质是对输入的驱动时钟进行计数 所以计数器在某种意义上讲 等同于对时钟进行分频 例如一个最大计数长度为N 2 n 从0计数到N 1 的计数器 也就是寄存器位数位n 那么寄存器最高位的输出为N 2 n分频
  • 正则表达式中.*的作用

    今天看正则表达式的书籍是看到这么个例子 要求匹配 文章中的xml 匹配使用的正则表达式为 lt xml gt 一开始没有理解 是做什么用处的 百度了一番后明白了 原来 中 代表任意单个字符 包括空格 代表前面任意单个字符的重复次数 因此 l
  • 100天精通Python(数据分析篇)——第73天:Pandas文本数据处理方法之查找、替换、拼接、正则、虚拟变量

    文章目录 每篇前言 一 Python字符串内置方法 1 文本查找 2 文本替换 3 文本拼接 4 正则提取 二 Pandas实现文本查找 1 str startswith 字符串 2 str endswith 字符串 3 str index
  • 【Python_requests学习笔记(一)】基于requests和re模块,爬取百度图片

    基于requests和re模块 爬取百度图片 前言 此篇文章中介绍requests的基本用法 和基于requests和re模块 爬取百度图片的案例 正文 1 requests模块 1 1 requests模块介绍 requests模块 类似
  • VB.Net常用的正则表达式(实例)

    d 非负整数 正整数 0 0 9 1 9 0 9 正整数 d 0 非正整数 负整数 0 0 9 1 9 0 9 负整数 d 整数 d d 非负浮点数 正浮点数 0 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1
  • 截取oracle字符串中的数字(转载)

    截取oracle字符串中的数字 云淡风轻博客 博客园 cnblogs com 方法一 如果Oracle版本不是太低的话 使用 正则表达式函数 REGEXP SUBSTR 处理 REGEXP SUBSTR有5个参数 分别是 第一个是输入的字符
  • IDEA正则表达式高级替换

    1 需求 需要将如下注释转换成另外一个形式 员工姓名 private String name 员工姓名 private String name 2 在idea中输入正则表达式进行快速替换 3 具体的正则表达式如下 替换前正则 替换后正则 1
  • Web前端复习——JS(正则表达式+内置对象)

    正则表达式 专门规定字符中字符 格式规则 的表达式 何时使用 只要定义字符串格式规则 都用正则表达式 最简单正则 一个关键词的原文 就是最简单的正则 1 备选字符集 规定某 一位 字符可选的备选文字列表 语法 备选字符列表 强调 1 无论备
  • Pattern.compile的flag参数

    Pattern compile函数 Pattern Pattern compile String regex int flag regex为正则表达式 flag的取值范围如下 Pattern CANON EQ 当且仅当两个字符的 正规分解
  • Java正则表达式详解

    1 1 正则表达式的概念以及演示 正则表达式可以用一些规定的字符来制定规则 并用来校验数据格式的合法性 正则表达式就是用来验证各种字符串的规则 它内部描述了一些规则 我们可以验证用户输入的字符串是否匹配这个规则 正则表达式是一种强大的校验机
  • 知道这20个正则表达式,能让你少写1,000行代码

    正则表达式 一个十分古老而又强大的文本处理工具 仅仅用一段非常简短的表达式语句 便能够快速实现一个非常复杂的业务逻辑 熟练地掌握正则表达式的话 能够使你的开发效率得到极大的提升 正则表达式经常被用于字段或任意字符串的校验 如下面这段校验基本
  • python爬虫之数据解析

    python爬虫之数据解析 正则表达式 bs4 xpath 主要运用在聚焦爬虫模块中 涉及到的数据解析方法有 正则表达式 bs4以及xpath 1 使用对象 聚焦爬虫 聚焦爬虫 爬取页面中指定的页面内容 2 数据解析原理概述 解析的局部的文
  • js正则表达式多行匹配

    在js匹配网页内容时 往往需要匹配一段代码比如 div div 中间可能有很多行 这个时候一般 的匹配规则是匹配不出来的 如下介绍一个折中的方法 var content 这里是内容 var re p class s S p gt g var
  • 正则表达式(日期、金额、特殊字符)_java语言

    正则表达式 java 正则表达式在线测试网站 个人觉得还算精确 http tool chinaz com regex 备注 如有错误 希望留言指出 虚心请教 金额格式 正数 包含至多2位小数 第1种形式 校验金额格式是否正确 正数 包含至多
  • java OpenOffice把word转html(Convert word to html )

    1 下载安装OpenOffice 网址http download openoffice org index html 2 下载第三方工具包JODConverter http www artofsolving com opensource j
  • 正则表达式的资源

    https www regular expressions info index html https regex101 com

随机推荐

  • QT生成动态链接库.so文件

    首先是新建一个工程 选择C 库 打开后是这样的 然后输入新建的名称 下一步 记得勾选Qtcore那个 就是默认的那个 否则编译似乎不能通过 因为后面自动生成的 h文件里还有这个 自动生成的有4个文件一个pro 一个cpp 一个XXX h文件
  • 【darknet yolo】could not open file xx.cfg

    错误图如上 原因 data文件的编码不对 用notepad 打开发现 错误的 正确的 发现错误的比正确的每行换行的时候多了一个cr 解决 ubuntu下安装dos2unix 然后转换下 dos2unix 52 data
  • 面试题:Spring常见的一些面试题与答案

    Spring是Java开发领域中最流行的框架之一 广泛应用于企业级应用的开发 在面试中 面试官经常会问及与Spring相关的问题 以考察面试者对Spring框架的理解和应用能力 本文将介绍一些常见的Spring面试题 并提供详细的解答和实际
  • PID参数解析+调参经验笔记(经验法)

    在最前面推荐一个大佬的讲解 真的很浅显易懂 建议先看了解大概PID 链接 ps 2022 1 2更新pid通俗理解 out speed p err d now speed pid最核心算法 运动员参加100米跑步 假设这个人可以瞬间提速 但
  • 关于==和equals的区别和联系,面试这么回答就可以

    长篇大论的话 我这里就不多写了 相信大家入门java 的时候就知道个大概了 这里想表述的是 如果面试官问你 关于 和equals的区别 该怎么回答完美呢 可以这样说 总结的来说 1 对于 比较的是值是否相等 如果作用于基本数据类型的变量 则
  • vcomp140.dll丢失怎样修复?多种方法教你修复

    vcomp140 dll丢失算是一个比较常见的异常事件 在使用电脑的时候 有时候弹窗出现由于找不到vcomp140 dll 无法继续执行代码等 这种都是属于vcomp140 dll文件丢失 今天我们主要针对这个情况来给大家说说vcomp14
  • 谁在爬我的网站?我要“炸”了他

    如果你曾经搭建过自己的网站 那么你一定对网络爬虫感到无比的烦恼 这些爬虫每天都在大量的访问你的网站 频繁且毫无节制地消耗你的服务器资源 那么 今天我们就来探讨一下 如何 干死 这些爬虫的服务器 注意 本文所讨论的内容仅供技术交流 不涉及任何
  • jquery的layer打开iframe,通过ajax提交iframe表单

    addOption click function thisId var index1 layer open type 2 area 850px 450px maxmin true title 添加项 btn 确定 取消 content In
  • Centos下环境变量

    文章内容如下 1 什么是环境变量 2 如何通过程序获取环境变量 3 常识规律 一 环境变量的定义 环境变量就是指一段路径 定义环境变量主要是为了方便的执行程序 添加环境变量的方法是export PATH PATH A B export PA
  • 12.示例程序(定时器定时中断&定时器外部时钟)

    目录 定时中断和时钟源选择相关库函数使用 1 定时器初始化配置 2 参数 PSC ARR等 更改函数 在程序运行过程中修改 3 使用定时器库函数的一些细节 定时器定时中断实例 定时器外部时钟选择 知识点get 滤波器工作原理 可以滤掉信号的
  • python爬虫处理滑块验证_Python 爬虫进阶必备

    今日网站 aHR0cHM6Ly9idWxsZXRpbi5jZWJwdWJzZXJ2aWNlLmNvbS8 这个网站是比较简单的滑块验证码 没有涉及指纹 轨迹以及 JS 的加密 但是有助于进一步了解滑块验证码的具体实现和分析流程 所以作为 C
  • J2EE之集合框架

    集合框架01 0 UML 统一建模语言 1 Collection接口 1 1 集合框架的顶级接口 1 2 是Set和List的父接口 1 3 但不是Map的父接口 集合中只能添加引用类型数据 2 List接口 2 1 特点 有序 对象可以重
  • 解决centOS8下Unit network-manager.service not found的问题

    systemctl restart NetworkManager 使用上面的命令即可
  • armbian打印服务器恩山无线,刷了armbian后用cups共享打印非常爽

    另楼主我输入apt get install hannah foo2zjs printer driver foo2zjs common printer driver foo2zjs命令返回有错误啊何解Setting up dc 1 06 95
  • 借助PLC-Recorder,西门子PLC S7-1200实现4ms准确周期采集的方法(带时间戳采集)

    目录 1 测试条件 2 测试结论 3 PLC的发送程序 4 PLC连接配置 5 PLC Recorder侧的通讯设置 6 PLC Recorder的通道配置 7 PLC Recorder的变量配置 8 正常通讯情况的界面 9 记录数据的情况
  • hive sql求多个字段的最小值和最大值的办法

    1 准备数据表test2 create table test2 a int b int c int d int e int 2 准备2条数据 insert into table test2 values 5 1 3 8 6 insert i
  • 软件测试策略概述

    一般来说 测试策略描述了软件开发过程中进行测试方法 用来告诉测试过程中所有可能的参与者 测试活动应该如何进行 其中主要会包括测试目标 测试新功能的方法 测试项目的时间和资源 以及测试环境等等 除此以外 测试策略应该描述测试过程中存在哪些风险
  • 前端将后端返回的文件流转成url

    将返回的流数据转换为url export function getObjectURL file type return window URL createObjectURL new Blob file type base64转url exp
  • 2020-09-27 IDEA Maven dependencyManagement中的依赖版本会覆盖传递依赖版本

    IDEA Maven dependencyManagement中的依赖版本会覆盖传递依赖版本 参考帖子 Maven传递依赖的坑 父pom中dependencyManagement版本优先级高于传递依赖版本 问题描述 同一个项目 同事拉取其他
  • 常用正则表达式

    正则表达式用于字符串处理 表单验证等场合 实用高效 现将一些常用的表达式收集于此 以备不时之需 匹配中文字符的正则表达式 u4e00 u9fa5 评注 匹配中文还真是个头疼的事 有了这个表达式就好办了 匹配双字节字符 包括汉字在内 x00