正则表达式大全

2023-11-16

1、匹配中文:

[\u4e00-\u9fa5]

2、英文字母:

[a-zA-Z]

3、数字:

[0-9]



4、匹配中文,英文字母和数字及下划线:

^[\u4e00-\u9fa5_a-zA-Z0-9]+$


同时判断输入长度:
 

[\u4e00-\u9fa5_a-zA-Z0-9_]{4,10}

5、不能以_开头

(?!_)

不能以_结尾

(?!.*?_$)

至少一个汉字、数字、字母、下划线

[a-zA-Z0-9_\u4e00-\u9fa5]+

与字符串结束的地方匹配

$

6、只含有汉字、数字、字母、下划线,下划线位置不限:

^[a-zA-Z0-9_\u4e00-\u9fa5]+$



7、由数字、26个英文字母或者下划线组成的字符串

^\w+$



8、2~4个汉字

"^[\u4E00-\u9FA5]{2,4}$";



9、最长不得超过7个汉字,或14个字节(数字,字母和下划线)正则表达式

^[\u4e00-\u9fa5]{1,7}$|^[\dA-Za-z_]{1,14}$


 

10、匹配双字节字符(包括汉字在内):

[^x00-xff]


评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

11、匹配空白行的正则表达式:

ns*r


评注:可以用来删除空白行

12、匹配HTML标记的正则表达式:

<(S*?)[^>]*>.*?|<.*? />


评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力

13、匹配首尾空白字符的正则表达式:

^s*|s*$


评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式

14、匹配Email地址的正则表达式:

^[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$

评注:表单验证时很实用

15、手机号:

^((13[0-9])|(14[0-9])|(15[0-9])|(17[0-9])|(18[0-9]))\d{8}$

16、身份证:

(^\d{15}$)|(^\d{17}([0-9]|X|x)$)

17、匹配网址URL的正则表达式:

[a-zA-z]+://[^s]*


评注:网上流传的版本功能很有限,上面这个基本可以满足需求

18、匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):

^[a-zA-Z][a-zA-Z0-9_]{4,15}$


评注:表单验证时很实用


19、匹配国内电话号码:

d{3}-d{8}|d{4}-d{7}


评注:匹配形式如 0511-4405222 或 021-87888822

20、匹配腾讯QQ号:

[1-9][0-9]{4,}


评注:腾讯QQ号从10000开始

21、匹配中国邮政编码:

[1-9]d{5}(?!d)


评注:中国邮政编码为6位数字

22、匹配身份证:

d{15}|d{18}


评注:中国的身份证为15位或18位

23、匹配ip地址:

d+.d+.d+.d+


评注:提取ip地址时有用


24、匹配特定数字:

匹配正整数

^[1-9]d*$

匹配负整数

^-[1-9]d*$ 

匹配整数

^-?[1-9]d*$

匹配非负整数(正整数 + 0)

^[1-9]d*|0$

匹配非正整数(负整数 + 0)

^-[1-9]d*|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)$

匹配非负浮点数(正浮点数 + 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$


评注:处理大量数据时有用,具体应用时注意修正


25、匹配特定字符串:
匹配由26个英文字母组成的字符串

^[A-Za-z]+$

匹配由26个英文字母的大写组成的字符串

^[A-Z]+$

匹配由26个英文字母的小写组成的字符串

^[a-z]+$

匹配由数字和26个英文字母组成的字符串

^[A-Za-z0-9]+$

匹配由数字、26个英文字母或者下划线组成的字符串

^w+$

26、
在使用RegularExpressionValidator验证控件时的验证功能及其验证表达式介绍如下:
只能输入数字:

“^[0-9]*$”


只能输入n位的数字:

“^d{n}$”


只能输入至少n位数字:

“^d{n,}$”


只能输入m-n位的数字:

“^d{m,n}$”


只能输入零和非零开头的数字:

“^(0|[1-9][0-9]*)$”


只能输入有两位小数的正实数:

“^[0-9]+(.[0-9]{2})?$”


只能输入有1-3位小数的正实数:

“^[0-9]+(.[0-9]{1,3})?$”


只能输入非零的正整数:

“^+?[1-9][0-9]*$”


只能输入非零的负整数:

“^-[1-9][0-9]*$”


只能输入长度为3的字符:

“^.{3}$”


只能输入由26个英文字母组成的字符串:

“^[A-Za-z]+$”


只能输入由26个大写英文字母组成的字符串:

“^[A-Z]+$”


只能输入由26个小写英文字母组成的字符串:

“^[a-z]+$”


只能输入由数字和26个英文字母组成的字符串:

“^[A-Za-z0-9]+$”


只能输入由数字、26个英文字母或者下划线组成的字符串:

“^w+$”


验证用户密码:正确格式为:以字母开头,长度在6-18之间,

“^[a-zA-Z]w{5,17}$”


只能包含字符、数字和下划线。
验证是否含有^%&',;=?$"等字符:

“[^%&',;=?$x22]+”


只能输入汉字:

“^[u4e00-u9fa5],{0,}$”


验证Email地址:

“^w+[-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$”


验证InternetURL:

“^http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$”


验证身份证号(15位或18位数字):

“^d{15}|d{}18$”


验证一年的12个月:

“^(0?[1-9]|1[0-2])$”正确格式为:“01”-“09”和“1”“12”


验证一个月的31天:

“^((0?[1-9])|((1|2)[0-9])|30|31)$”


正确格式为:

“01”“09”和“1”“31”


匹配中文字符的正则表达式:

 [u4e00-u9fa5]


匹配双字节字符(包括汉字在内):

[^x00-xff]


匹配空行的正则表达式:

n[s| ]*r


匹配HTML标记的正则表达式:

/<(.*)>.*|<(.*) />/


匹配首尾空格的正则表达式:

(^s*)|(s*$)


匹配Email地址的正则表达式:

w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*


匹配网址URL的正则表达式:

http://([w-]+.)+[w-]+(/[w- ./?%&=]*)?

我的个人网站地址:http://www.eotodo.com

喜欢这篇文章吗?欢迎分享到你的微博、QQ群,并关注我的微博,谢谢支持

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

正则表达式大全 的相关文章

  • Day 13 - 正则表达式习题

    利用正则表达式完成下面的操作 1 用户名匹配 要求 1 用户名只能包含数字 字母 下划线 2 不能以数字开头 3 度在 6 到 16 位范围内 re username re compile r a zA Z w 5 15 print re
  • vue : 无法加载文件 \Node.js\node_global\vue.ps1。未对文件 \Node.js\node_global\vue.ps1 进行数字签名。无法在当前系统上运行该脚本。

    vue 无法加载文件 D Node js node global vue ps1 未对文件 D Node js node global vue ps1 进行数字签名 无法在当前系统上运行该脚本 最近在使用powershell下使用 vue
  • 截取oracle字符串中的数字(转载)

    截取oracle字符串中的数字 云淡风轻博客 博客园 cnblogs com 方法一 如果Oracle版本不是太低的话 使用 正则表达式函数 REGEXP SUBSTR 处理 REGEXP SUBSTR有5个参数 分别是 第一个是输入的字符
  • Java正则工具类:字母数字下划线、数据库url校验等

    文章目录 前言 一 正则基础语法 二 正则工具类 总结 前言 本文内容观摩的是其他作者的代码 在基础上增加修改了一些 参考原文地址 java用正则表达式 提示 以下是本篇文章正文内容 下面案例可供参考 一 正则基础语法 字符 描述 匹配输入
  • IDEA正则表达式高级替换

    1 需求 需要将如下注释转换成另外一个形式 员工姓名 private String name 员工姓名 private String name 2 在idea中输入正则表达式进行快速替换 3 具体的正则表达式如下 替换前正则 替换后正则 1
  • Java的replaceAll()方法

    replaceAll 方法实际是采用正则表达式的规则去匹配的 在regex中 表示一个 在java中一个 也要用 表示 这样 前一个 代表regex中的 后一个 代表java中的 所以字符串转义一次 正则转义一次 那么一个斜扛要写4个 1
  • 38 匹配字符串——findall()方法

    文章目录 语法 案例 语法 findall 方法用于在整个字符串中搜索所有符合正则表达式的字符串 并以列表的形式返回 如果匹配成功 则返回包含匹配结构的列表 否则返回空列表 findall 方法的语法格式如下 re findall patt
  • 4.4.5 密码验证(2)

    4 当且仅当含数字和字母的密码验证 如果密码当且仅当包含数字和字母 那么该密码的强度是中等强度 当然 它的安全性一般 以下正则表达式能够验证当且仅当包含数字和字母的密码 da zA Z d a zA Z da zA Z 74 正则表达式 7
  • QT QStringList 用法

    QStringList类提供了一个字符串列表从QList
  • grep命令

    grep 全称是global regular expressions print 功能就是查找匹配模式的行 grep对文本内容的处理是以行为单位 输出也是输出匹配的行 也可以使用两个变种程序egrep和fgrep egrep与grep E相
  • 对字符串进行正则取子串

    题目是这样的 对一段HTML网页内容 解析出其中所有的键值对 比如其中type text type为属性 text为值 二者为一个键值对 内容如下
  • 【Linux命令—shell】正则表达式

    正则表达式 regular expression 描述一个字符集合的表达方式 模糊匹配 目录 1 基本正则 2 扩展正则 3 兼容的正则 perl 4 综合案例练习 1 基本正则 演示如下 2 扩展正则 注意 grep不支持扩展正则 如果需
  • Python命令行参数定义及注意事项

    在命令行中运行python代码是很常见的 下面介绍如何定义命令后面跟的参数 常规用法 Python代码中主要使用下面几行代码来定义并获取需要在命令行中赋值的参数 import argparse parser argparse Argumen
  • regex_replace()函数的应用与解析

    include
  • QRegexp、QRegularExpression的用法学习

    QRegexp QRegularExpression的用法学习 文章目录 QRegexp QRegularExpression的用法学习 QRegexp QRegularExpression 模式选项 QRegexp Regexp 由表达式
  • JS字符串替换函数全部替换方法

    color olive JS字符串替换函数 Replace 字符串1 字符串2 1 我们都知道JS中字符串替换函数是Replace 字符串1 字符串2 但是这个函数只能将第一次出现的字符串1替换掉 那么我们如何才能一次性全部替换掉了 将上面
  • 使用 Vue.js 结合bootstrap 实现的分页控件

    使用 vue js 结合 bootstrap 开发的分页控件 效果如下 实现代码 div class contai div
  • Java 正则表达式工具类大全

    import java util regex Matcher import java util regex Pattern author nql Description 验证工具类 date now public class Validat
  • 正则校验手机号

    正则表达式可以用来校验手机号码的合法性 如果你想使用正则表达式来校验中国大陆的手机号码 可以使用如下的正则表达式 1 3 9 d 9 这个正则表达式可以匹配所有 13 到 19 开头的 11 位数字 即所有中国大陆的手机号码 例如 如果你想
  • 正则表达式的资源

    https www regular expressions info index html https regex101 com

随机推荐

  • element对上传组件二次封装,vue上传下载组件的实现

    前言 对element的上传组件进行二次封装 让他可以实现上传下载功能 实现效果 手动上传 不是自动 选中文件后可上传 也可清空选中文件 单个删除也是可以的 实现步骤 1 封装好的 uploadAndDown vue源码 引入就好
  • Linux 入门常用命令(ZT)

    1 Linux进入与退出系统 进入Linux系统 必须要输入用户的账号 在系统安装过程中可以创建以下两种帐号 1 root 超级用户帐号 系统管理员 使用这个帐号可以在系统中做任何事情 2 普通用户 这个帐号供普通用户使用 可以进行有限的操
  • MATLAB——求冲激响应和阶跃响应

    题目 已知一个RLC串联振荡电路系统函数为 其中L 22mH C 2000pF R 100 求其时域的冲激响应和阶跃响应 代码解释 这段代码定义了三个变量 电感L 电容C和电阻R 然后 定义了两个数组a和b 它们是差分方程的系数 接下来 使
  • 拿不到年薪25W全额退款

    速报 2023年经济下行趋势明显 毕业生出路在哪儿 今年 毕业人数将达到1158万 导致很多公司招聘非常谨慎 要求也变得非常更高 别说offer 现在出门找个实习都难 大学四年我都学了啥 是啊 现在咋找实习丰富简历啊 今年毕业的我该怎么办
  • selenium自动处理验证码

    自动化测试中的验证码处理方法小总结 转自 Selenium中文论坛 gt Selenium RC gt 转 自动化测试中的验证码处理方法小总结 原作者 yanpingsha 目前 不少网站在用户登录 用户提交信息等登录和输入的页面上使用了验
  • kubernetes ——网络存储nfs

    kubernetes 网络存储nfs 一 共享的机器上安装nfs 1 yum y insstall nfs utils 2 mkdir p etc exports 3 vi etc exports ifs kubernetes rw no
  • 恶意代码分析实战——Lab03-01.exe基础动态分析篇

    恶意代码分析实战 Lab03 01 exe基础动态分析篇 1 实验目的 综合运用各种分析工具 分析Lab03 01 exe的基本信息 并推测其功能 2 实验环境 硬件 软件 VMware虚拟机 winxp 硬件 处理器Intel Core
  • 浅谈Class.forName()在JDBC中的作用

    目录 1 Class forName 有什么作用呢 2 为什么不直接new 3 为什么删除Class forName com mysql jdbc Driver 还是可以运行 JDBC是Bridge模式的典型应用 DriverManager
  • 怎么在matlab项目中找到某个变量或函数(必行)

    怎么在matlab项目中找到某个变量或函数 必行 1 首先将当前文件路径设置到项目所在文件夹 2 单击 编辑器 下的 查找文件 功能键 3 在 查找包含以下文本的文件 对话框内输入你要搜索的文本 并在 仅包括以下文件类型 对话框选择相应类型
  • cocos2d-x 卡牌翻牌效果的实现

    cocos2d x 卡牌翻牌效果的实现 2012年07月25日 综合 共 3085字 字号 小 中 大 评论关闭 猴子原创 欢迎转载 转载请注明 转载自Cocos2D开发网 Cocos2Dev com 谢谢 原文地址 http www co
  • Java8 HashMap源码解析(内部存储结构及实现方式详解)

    HashMap是我们日常使用的非常多的java集合框架下的一员 它是基于哈希表的 Map 接口的实现 以key value的形式存在 我们可以通过key快速地存 取value 本文以基于 JDK1 8 为源码 简单梳理了一下hashMap的
  • 西瓜书(周志华):什么是版本空间以及如何求取版本空间

    下面是自己结合百度的资料来理解的一些比较通俗的说法 假设空间 属性所有可能取值组成的可能的样本 版本空间 与已知数据集一致的所有假设的子集集合 绿色加号代表正类样本 红色小圈代表负类样本 GB 是最大泛化正假设边界 maximally Ge
  • 【管理篇 / 登录】❀ 01. 网线连接登录 ❀ FortiGate 防火墙

    简介 当我们拿到新的防火墙的时候 首先要做的就是将电脑快速 简便的连接到防火墙 登录并进行管理 而最方便的连接方式就是用网线了 这里介绍的是最简单的飞塔防火墙物理连接以及浏览器登录访问 桌面式防火墙网线连接 飞塔防火墙产品线里低端的桌面式防
  • 对象转换为JSON数据格式&使用JQuery获取数据

    将对象转换为JSON数据格式 我们需要json lib 2 3 jdk15 jar架包 当然还需要其它架包 来实现对象转JSON数据格式 此架包提供两个类来实现转换 JSONObject fromObject object 将对象转换成js
  • Python爬虫编程实践--re bs及xpath

    Beautiful Soup库入门 Beautiful Soup 是一个HTML XML 的解析器 主要用于解析和提取 HTML XML 数据 它基于HTML DOM 的 会载入整个文档 解析整个DOM树 因此时间和内存开销都会大很多 所以
  • 共识算法-PBFT

    简介 1 PBFT简介 BFT Byzantine Fault Tolerance 是区块链共识算法中需要解决的一个核心问题 例如 公有链网络中 比特币和以太访中用的是POW EOS用的是DPOS PBFT一般用于联盟链场景中 它是共识节点
  • Vivado时序约束(转载)

    Vivado时序约束 本文主要介绍如何在Vivado设计套件中进行时序约束 原文出自Xilinx中文社区 Timing Constraints in Vivado UCF to XDC Vivado软件相比于ISE的一大转变就是约束文件 I
  • vue3 父子组件传参

    父向子传参 父组件
  • bootstrap table复选框选多页勾选

    bootstrap table复选框选多页勾选 在项目中发现 bootstrap table的复选框选中后 翻页操作会导致上一页选中的丢失 api中的 bootstrapTable getSelections 只能拿到当前页的复选框 js
  • 正则表达式大全

    1 匹配中文 u4e00 u9fa5 2 英文字母 a zA Z 3 数字 0 9 4 匹配中文 英文字母和数字及下划线 u4e00 u9fa5 a zA Z0 9 同时判断输入长度 u4e00 u9fa5 a zA Z0 9 4 10 5