必须知道20个正则表达式(可以节省1000行代码)
正则表达式描述了一种字符串匹配的模式,可用于检查字符串是否包含特定的子字符串、替换匹配的子字符串或从字符串中提取满足特定条件的子字符串。
列目录,*。目录*中的txt。txt或ls *。txt不是正则表达式,因为*在这里的含义与正则*不同。
构造正则表达式的方法与创建数学表达式的方法相同。也就是说,可以将小表达式组合起来,用各种元字符和运算符创建更大的表达式。正则表达式的组成部分可以是单个字符、字符集、字符范围、字符之间的选择或所有这些组成部分的任意组合。
正则表达式是由普通字符(如字符A到Z)和特殊字符(称为“元字符”)组成的文本模式。模式描述了搜索文本时要匹配的一个或多个字符串。作为模板,正则表达式将字符模式与搜索到的字符串进行匹配。
正则表达式,一个非常古老而强大的文本处理工具,只需要一个简短的表达式语句就可以快速实现非常复杂的业务逻辑。掌握正则表达式可以大大提高你的开发效率。
正则表达式通常用于检查字段或任意字符串,例如以下用于检查基本日期格式的JavaScript代码:
var reg=/^(\\d{1,4})(-|\\/)(\\d{1,2})\\2(\\d{1,2})$/;var r=FieldValue . match(reg);if(r==null)警报('日期格式错误!');下面是前端开发中经常用到的20个正则表达式:
1.验证密码强度。
密码强度必须是大小写字母和数字的组合,不能使用特殊字符,长度在8到10之间。
^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])。{8,10}$ 2.查中文。
字符串只能是中文。
[\ \ u4e00-\ \ u9fa5] {0,} $3。由数字、26个英文字母或下划线组成的字符串。
\ ^\\w $4。验证电子邮件地址。
与密码一样,以下是电子邮件地址合规性的常规检查声明。
[\\w!#$%'* /=?^_`{|}~-] (?\\.[\\w!#$%'* /=?^_`{|}~-] )*@(?[\\w](?[\\w-]*[\\w])?\\.)[\\w](?[\\w-]*[\\w])?5.验证身份证号码。
以下是身份证号码的定期验证。15或18位。
15位:
[1-9]\ \ d { 7 }((0 \ \ d)|(1[0-2])(([0 | 1 | 2]\ \ d)| 3[0-1])\ \ d { 3 } $ 18位。
[1-9]\ \ d { 5 }[1-9]\ \ d { 3 }((0 \ \ d)|(1[0-2])([0 | 1 | 2]\ \ d)| 3[0-1。
“yyyy-mm-dd”格式的日期验证考虑了平闰年。
^(?(?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])|(?33600 [48] | [2468] [048] | [13579] [26]) 00)-02-29) $7.
核对金额,精确到小数点后2位。
^[0-9] (.[0-9]{2})?$8.验证手机号码。
以下是中国以13、15、18开头的手机号码的正则表达式。
(13 [0-9] | 14 [5 | 7] | 15 [0 | 1 | 2 | 3 | 5 | 6 | 7 | 8 | 9] | 18 [0 | 1 | 2 | 3 | 5 | 6 | 7 | 8 | 9]) \ \.
目前IE还没有完全被取代,很多页面还需要版本兼容。下面是IE版本检查的表达式。*MSIE [5-8](?\\.[0-9] )?(?*三叉戟\\/[5-9]\\.0)。*$ 10.验证IP-v4地址。
IP4定期声明。
\\b(?(?25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\b
11.验证IP-v6地址。
IP6常规声明。
(([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-F]){3,3} (25 [0-5] | (2 [0-4] | 1 {0,1} [0-9]) {0,1} [0-9]) | ([0-9a-fa-f] {1,4。
在应用程序开发中,经常需要区分请求是HTTPS还是HTTP。下面的表达式可以取出一个网址的前缀,然后进行逻辑判断。
if(!s.match(/^[a-za-z]: \ \/\ \//){ s=' http://s;}13.提取网址链接。
下面的表达式可以过滤掉一段文本中的网址。
^(f|ht){1}(tp|tps):\\/\\/([\\w-]\ \。)[\\w-] (\\/[\\w-。/?%=]*)?14.文件路径和扩展名检查。
验证文件路径和扩展名。
^([a-za-z]\\:|\\\\)\\\\([^\\\\]\\\\)*[^\\/:*?'|] \\.txt(l)?$15.选择彩色十六进制代码。
有时需要从网页中提取颜色代码,因此可以使用以下表达式。
\\#([a-fA-F]|[0-9]){3,6} 16。提取网页图片。
如果要从网页中提取所有图片信息,可以使用以下表达式。
\ \ *[img][\ \]*[src]*=*[\ \ ' \ \ ']{ 0,1} ([\ \' \ \' \] *) 17。选择页面超链接。
选择html中的超链接。
(;a\\s*?*\\brel=)[^;]*)(href='https?//)((?(?(?www\\。)?'。内爆(' |(?www\\。)?',$follow_list)。'))[^'] )'((?*\\brel=)[^;]*)(?[^;]*) 18.细化CSS。
用下面的表达式,可以搜索到属性值相同的CSS,从而达到细化代码的目的。
^\\s*[a-za-z\\-]\ \ s *[:]{ 1 } \ \ s[a-za-z0-9 \ \ s . #][;]{1} 19.提取评论。
如果需要删除HMTL的注释,可以使用以下表达式。
!- (.*?) -
20.匹配HTML标签。
下面的表达式可以匹配HTML中的标签。
/?\\w ((\\s \\w (\\s*=\\s*?'.*?'|'.*?'|[\\^''\\s]))?)\\s*|\\s*)/?真的很有用。掌握这20个正则表达式可以节省1000行代码。感兴趣的朋友可以参考一下!
正则表达式的相关语法。
下面是我找到的一个非常好的正则表达式备忘单,可以用来快速查找相关语法。
学习正则表达式我在网上看到一个很好的快速学习正则表达式的指南,有兴趣进一步学习的同学可以参考一下。
对于初学者,我们推荐大家阅读这篇文章://www . JB 51 . net/tools/zhengze . html。
Regex101是一个非常好的正则表达式在线测试工具。你可以直接在线测试你的正则表达式。
此外,我还在网上找到了一些关于正则表达式的好教程和书籍。你可以从我们这里下载。边肖首先推荐两个经典教程:
起始正则表达式中文版://www . JB 51 . net/books/34143 . html
正则表达式Cookbook的中文版://www . JB 51 . net/books/35140 . html
PS:我们将为您提供两个非常方便的正则表达式工具,供您参考:
JavaScript正则表达式在线测试工具:http://tools.jb51.net/regex/javascript.
在线正则表达式生成工具:http://tools.jb51.net/regex/create_reg.
版权声明:必须知道20个正则表达式(可以节省1000行代码)是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。