位置: IT常识 - 正文

正则(正则动量)

编辑:rootadmin
什么是正则表达式 正则表达式,又称规则表达式,(Regular Expression,在代码中常简写为 regex、regexp 或 RE),是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符"),是计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列匹 ... 什么是正则表达式

推荐整理分享正则(正则动量),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:正则是什么意思,正则化,正则化,正则表达式生成器,正则表达式语法大全,正则表达式,正则表达式语法大全,正则表达式,内容如对您有帮助,希望把文章链接给更多的朋友!

正则(正则动量)

正则表达式,又称规则表达式,(Regular Expression,在代码中常简写为 regex、regexp 或 RE),是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符"),是计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串,通常被用来检索、替换那些符合某个模式(规则)的文本

正则在线测试工具 https://regexr-cn.com/

正则刷题网 程序胶囊 https://codejiaonang.com/#/course/regex_chapter2/0/0

部分内容转载于Road To Coding

创建一个正则表达式使用构造函数创建/*pattern(模式)描述了表达式的模式modifiers(修饰符)用于指定全局匹配、区分大小写的匹配和多行匹配*/letpatt1=newRegExp(pattern,modifiers);//例子letstr="唱跳rap打篮球";letpatt2=newRegExp("rap","g");console.log(patt2.test(str));//true使用字面量形式创建letstr="唱跳rap打篮球";letre=/rap/g;console.log(re.test(str));//true

注意:当使用构造函数创造正则对象时,需要常规的字符转义规则(在前面加反斜杠 \)

letre=newRegExp("\\w+");letre=/\w+/;基础正则表达式速查表1.字符表达式描述[abc]字符集。匹配集合中所含的任一字符[^abc]否定字符集。匹配任何不在集合中的字符[a-z]字符范围。匹配指定范围内的任意字符.匹配除换行符以外的任何单个字符。\转义字符\w匹配任何字母数字,包括下划线(等价于[A-Za-z0-9_])\W匹配任何非字母数字(等价于[^a-za-z0-9_])\d数字。匹配任何数字\D非数字。匹配任何非数字字符\s空白。匹配任何空白字符,包括空格、制表符等\S非空白。匹配任何非空白字符2.分组和引用表达式描述(expression)分组。匹配括号里的整个表达式(?:expression)非捕获分组。匹配括号里的整个字符串但不获取匹配结果,拿不到分组引用\num回溯引用 对前面所匹配分组的引用。比如(\d)\1 可以匹配两个相同的数字,(Code)(Sheep)\1\2 则可以匹配 CodeSheepCodeSheep3.锚点/边界表达式描述匹配字符串或行开头$匹配字符串或行结尾\b匹配单词边界。比如 Sheep\b 可以匹配 CodeSheep 末尾的 Sheep,不能匹配 CodeSheepCode 中的 Sheep\B匹配非单词边界。比如 Code\B 可以匹配 HelloCodeSheep 中的 Code,不能匹配 HelloCode 中的 Code4.量词表达式描述?匹配前面的表达式0个或1个。即表示可选项。+匹配前面的表达式至少1个。*匹配前面的表达式0个或多个。\|或运算符。并集,可以匹配符号前后的表达式。{m}匹配前面的表达式m个。{m,}匹配前面的表达式最少m个。{m,n}匹配前面的表达式最少m个,最多n个。5.预查断言表达式描述(?=)正向先行断言:(?=表达式),指在某个位置向右看,表示所在位置右侧必须能匹配表达式(?!)反向先行断言(?!表达式)的作用是保证右边不能出现某字符(?<=)正向后行断言:(?<=表达式),指在某个位置向左看,表示所在位置左侧必须能匹配表达式(?<!)反向后行断言:(?<!表达式),指在某个位置向左看,表示所在位置左侧不能匹配表达式6.特殊标志表达式描述/.../i忽略大小写。/.../g全局匹配。/.../m多行修饰符。用于多行匹配。常用正则表达式示例数字效验描述正则表达式备注数字^[0-9]*$n位数字^\d{n}$至少n位数字^\d{n,}$m~n位数字^\d{m,n}$整数^(-?[1-9]\d*)$非0开头,包括正整数和负整数正整数^[1-9]\d*$负整数^-[1-9]\d*$非负整数^(([1-9]\d*)|0)$非正整数^((-[1-9]\d*)|0)$浮点数^-?(?:[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0\.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)$包含0非负浮点数^(?:[1-9]\d*\.\d+|0\.\d+|0\.0+|0)$包含0仅一位小数^-?(?:0|[1-9][0-9]*)\.[0-9]{1}$最少一位小数^-?(?:0|[1-9][0-9]*)\.[0-9]{1,}$最多两位小数^-?(?:0|[1-9][0-9]*)\.[0-9]{1,2}$连续重复的数字^(\d)\1+$例如:111,222字符校验描述正则表达式备注中文^[\u4E00-\u9FA5]+$全角字符^[\uFF00-\uFFFF]+$半角字符^[\u0000-\u00FF]+$英文字符串(大写)^[A-Z]+$英文字符串(小写)^[a-z]+$英文字符串(不区分大小写)^[A-Za-z]+$中文和数字^(?:[\u4E00-\u9FA5]{0,}|\d)+$英文和数字^[A-Za-z0-9]+$数字、英文字母或者下划线组成的字符串^\w+$中文、英文、数字包括下划线^[\u4E00-\u9FA5\w]+$不含字母的字符串^[^A-Za-z]*$连续重复的字符串^(.)\1+$例如:aa,bb长度为n的字符串^.{n}$ASCII^[ -~]$日期和时间校验描述正则表达式备注日期^\d{1,4}-(?:1[0-2]|0?[1-9])-(?:0?[1-9]|[1-2]\d|30|31)$弱校验,例如:2022-06-12日期^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$严格校验,考虑平闰年时间^(?:1[0-2]|0?[1-9]):[0-5]\d:[0-5]\d$12小时制,例如:11:21:31时间^(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d$24小时制,例如:23:21:31日期+时间^(\d{1,4}-(?:1[0-2]|0?[1-9])-(?:0?[1-9]|[1-2]\d|30|31)) ((?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d)$例如:2000-11-11 23:20:21日常生活相关描述正则表达式备注中文名^[\u4E00-\u9FA5·]{2,16}$英文名^[a-zA-Z][a-zA-Z\s]{0,20}[a-zA-Z]$车牌号^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][A-HJ-NP-Z][A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]$不含新能源车牌号^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领][A-HJ-NP-Z](?:(?:[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳])|(?:(?:\d{5}[A-HJK])|(?:[A-HJK][A-HJ-NP-Z0-9][0-9]{4})))$包含新能源火车车次^[GCDZTSPKXLY1-9]\d{1,4}$例如:G1234手机号^(?:(?:\+|00)86)?1[3-9]\d{9}$弱匹配手机号^(?:(?:\+|00)86)?1(?:(?:3[\d])|(?:4[5-79])|(?:5[0-35-9])|(?:6[5-7])|(?:7[0-8])|(?:8[\d])|(?:9[189]))\d{8}$严格匹配固话号码^(?:(?:\d{3}-)?\d{8}|^(?:\d{4}-)?\d{7,8})(?:-\d+)?$手机IMEI码^\d{15,17}$一般是15位邮编^(?:0[1-7]|1[0-356]|2[0-7]|3[0-6]|4[0-7]|5[1-7]|6[1-7]|7[0-5]|8[013-6])\d{4}$例如:211100统一社会信用代码^[0-9A-HJ-NPQRTUWXY]{2}\d{6}[0-9A-HJ-NPQRTUWXY]{10}$身份证号码(1代)^[1-9]\d{7}(?:0\d|10|11|12)(?:0[1-9]|[1-2][\d]|30|31)\d{3}$15位数字身份证号码(2代)^[1-9]\d{5}(?:18|19|20)\d{2}(?:0[1-9]|10|11|12)(?:0[1-9]|[1-2]\d|30|31)\d{3}[0-9Xx]$18位数字QQ号^[1-9][0-9]{4,}$一般是5到10位微信号^[a-zA-Z][-_a-zA-Z0-9]{5,19}$一般6~20位,字母开头,可包含字母、数字、-、_,不含特殊字符股票代码^(s[hz]|S[HZ])(000[\d]{3}|002[\d]{3}|300[\d]{3}|600[\d]{3}|60[\d]{4})$A股,例如:600519银行卡卡号^[1-9]{1}(?:\d{15}|\d{18})$一般为19位互联网相关描述正则表达式备注域名^[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(?:\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+$例如:r2coding.com网址^(?:https?:\/\/)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(?:\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+$例如:https://www.r2coding.com/带端口号的网址(或IP)^(?:https?:\/\/)?[\w-]+(?:\.[\w-]+)+:\d{1,5}\/?$例如:http://127.0.0.1:8888/URL^https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b(?:[-a-zA-Z0-9()!@:%_\+.~#?&\/\/=]*)$例如:https://www.r2coding.com/#/README?id=1邮箱email^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(?:\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+$支持中文,例如:codesheep@cs.com用户名^[a-zA-Z0-9_-]{4,20}$4到20位弱密码^[\w]{6,16}$6~16位,包含大小写字母和数字的组合强密码^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@\.#$%^&*? ]).*$至少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符端口号^(?:[0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5])$例如:65535IPv4地址^(?:(?:\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.){3}(?:\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])$例如:192.168.31.1IPv4地址+端口^(?:(?:\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.){3}(?:\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])(?::(?:[0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5]))?$例如:192.168.31.1:8080IPv6地址^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$例如:CDCD:910A:2222:5498:8475:1111:3900:2020IPv6地址+端口^\[(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\](?::(?:[0-9]|[1-9][0-9]{1,3}|[1-5][0-9]{4}|6[0-4][0-9]{3}|65[0-4][0-9]{2}|655[0-2][0-9]|6553[0-5]))?$例如:[CDCD:910A:2222:5498:8475:1111:3900:2020]:9800子网掩码^(?:254|252|248|240|224|192|128)\.0\.0\.0|255\.(?:254|252|248|240|224|192|128|0)\.0\.0|255\.255\.(?:254|252|248|240|224|192|128|0)\.0|255\.255\.255\.(?:255|254|252|248|240|224|192|128|0)$例如:255.255.255.0MAC地址^(?:(?:[a-f0-9A-F]{2}:){5}|(?:[a-f0-9A-F]{2}-){5})[a-f0-9A-F]{2}$Version版本号^\d+(?:\.\d+){2}$例如:12.1.1图片后缀\.(gif|png|jpg|jpeg|webp|svg|psd|bmp|tif)+可按需增删扩展名集合视频后缀\.(swf|avi|flv|mpg|rm|mov|wav|asf|3gp|mkv|rmvb|mp4)+可按需增删扩展名集合图片链接(?:https?:\/\/)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(?:\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+.+\.(gif|png|jpg|jpeg|webp|svg|psd|bmp|tif)可按需增删扩展名集合视频链接(?:https?:\/\/)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(?:\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+.+\.(swf|avi|flv|mpg|rm|mov|wav|asf|3gp|mkv|rmvb|mp4)可按需增删扩展名集合迅雷链接thunderx?:\/\/[a-zA-Z\d]+=ed2k链接ed2k:\/\/\|file\|.+\|\/磁力链接magnet:\?xt=urn:btih:[0-9a-fA-F]{40,}.*其他描述正则表达式备注MD5格式^(?:[a-f\d]{32}|[A-F\d]{32})$32位MD5,例如:7552E7071B118CBFFEC8C930455B4297BASE64格式^\s*data:(?:[a-z]+\/[a-z0-9-+.]+(?:;[a-z-]+=[a-z0-9-]+)?)?(?:;base64)?,([a-z0-9!$&',()*+;=\-._~:@/?%\s]*?)\s*$例如:data:image/jpeg;base64,xxxx==UUID^[a-f\d]{4}(?:[a-f\d]{4}-){4}[a-f\d]{12}$例如:94f9d45a-71b0-4b3c-b69d-20c4bc9c8fdd16进制^[A-Fa-f0-9]+$例如:FFFFFF16进制颜色^#?([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$例如:#FFFFFFSQL语句^(?:select|drop|delete|create|update|insert).*$Java包名^(?:[a-zA-Z_]\w*)+(?:[.][a-zA-Z_]\w*)+$例如:com.r2coding.controller文件扩展名\.(?:doc|pdf|txt)可按需增删扩展名集合Windows文件路径^[a-zA-Z]:(?:\\[\w\u4E00-\u9FA5\s]+)+[.\w\u4E00-\u9FA5\s]+$例如:C:\Users\Administrator\Desktop\a.txtWindows文件夹路径^[a-zA-Z]:(?:\\[\w\u4E00-\u9FA5\s]+)+$例如:C:\Users\Administrator\DesktopLinux文件路径^\/(?:[^/]+\/)*[^/]+$例如:/root/library/a.txtLinux文件夹路径^\/(?:[^/]+\/)*$例如:/root/library/
本文链接地址:https://www.jiuchutong.com/zhishi/304137.html 转载请保留说明!

上一篇:php static的三种使用方法(php static变量)

下一篇:phpcms v9 php7可以运行吗(phpcms v9 getshell)

  • 资源税征收原则
  • 普通发票的金额包含增值税吗
  • 红冲去年暂估的费用怎么做账
  • 印花税的三种缴税方式
  • 如何确定固定资产的计税基础
  • 境内公司代付境外货款
  • 企业所得税纳税人包括哪些类型
  • 出口货物补税申报表
  • 基建贷款贴息账户有哪些
  • 库存金额负数怎么处理
  • 去银行提取备用金开支票怎么填
  • 税金及附加多计提了汇算清缴怎么办
  • 承兑汇票转出
  • 固定资产报废账务怎么处理
  • 代办企业开户
  • 汇算清缴补缴税分录
  • 固定资产已折旧完报废如何处理
  • 地质灾害评估费收费标准
  • 买鼠标去哪买
  • 境外所得抵免税额是什么意思
  • 注册资本没有缴足前贷款利息
  • 学校的纳税人识别号是不是社会信用代码
  • 案例分析正当防卫
  • 异地工程需要预交税吗
  • 汇总记账凭证账务处理程序的优点包括
  • 金税三期得死多少企业
  • 一般纳税人交的增值税可以抵扣吗
  • 低值易耗品属于资产类
  • 网上抵扣发票操作
  • 未摊销金额怎么算
  • 怎么把过期银行卡的钱取出来
  • 营改增后哪些费用可以抵扣
  • 开票收入怎么理解
  • 电脑开机后无显示,但主机电源指示灯长亮
  • getparameter报错
  • 跨年退税怎么处理
  • vmware download
  • 在建工程进项税额转出
  • 电脑网络提示ip地址错误怎么办
  • php数组函数输出《咏雪》里有多少"片"字
  • 土建工程付款方式比例
  • 摊销租赁费的会计分录
  • php编程入门教程
  • 浅谈php表单提交的问题
  • php曲线图模板
  • 成本票不够怎么做账
  • python进行统计分析
  • 金融企业会计科目有哪些
  • 企业开办前需要预测现金流量计划吗
  • 公司股东退股如何对资产纳税
  • 工程施工会计如何记账
  • 冲减去年管理费怎么做分录
  • 印花税缴款了发票怎么查
  • 减免税额月底怎么结转
  • 跨月发票红冲还要交税吗
  • 如何理解其他权益工具
  • 研发部门的房租一次记入还是分摊
  • 数据转换常见策略
  • freebsd使用wifi
  • 启动图形界面
  • directx device
  • win8n
  • linux配置文件命令
  • cocos2dx如何通过Image获取指定点颜色值
  • opengles 旋转 平移 缩放
  • sequelize join
  • xcopy命令拷贝目录
  • android/bitmap.h
  • nodejs+ts
  • windows下使用什么命令查看监听端口
  • javascript中判断数据类型的几种方法
  • jQuery版AJAX简易封装代码
  • js设置
  • jQuery Ajax 加载数据时异步显示加载动画
  • javascript中array数组对象的含义及常用方法
  • js 编程
  • 甘肃省网上税务登记流程
  • 贵州省产检费用报销流程
  • 国税能级管理(国税局等级制度)
  • 北京市社工证报考要求
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设