Javascript--常使用到的20个正则表达式
Javascript--常使用到的20个正则表达式
ifanjiaxin 发表于2年前
Javascript--常使用到的20个正则表达式
  • 发表于 2年前
  • 阅读 35
  • 收藏 7
  • 点赞 0
  • 评论 0

【腾讯云】如何购买服务器最划算?>>>   

摘要: 常使用到的20个正则表达式

                                            常使用到的20个正则表达式

                        一,问题描述

                                本次将记录JavaScript中,额,不对,反正正则通用的,

                                经常使用的 20 个正则表达式!

                        二,解决方案

                                1,密码的强度必须是包含大小写字母和数字的组合,不能使用特殊字符,长度在8-10

                                ^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$

                                2,字符串仅能是中文

                                ^[\\u4e00-\\u9fa5]{0,}$

                                3,由数字和26个英文字母及下划线组成的字符串

                                 ^\\w+$

                                4,校验E-mail地址

                                [\\w!#$%&'*+/=?^_`{|}~-]+(?:\\.[\\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\\w](?:[\\w-]*[\\w])?\\.)+[\\w](?:[\\w-]*[\\w])?

                                5,校验身份证号码(仅仅针对二代,即18位号码 )

                                ^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}([0-9]|X)$

                                6,校验日期,已考虑平闰年(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])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$

                                7,校验金额,精确到两位小数

                                 ^[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])\\d{8}$

                                9,判断IE浏览器版本

                                ^.*MSIE [5-8](?:\\.[0-9]+)?(?!.*Trident\\/[5-9]\\.0).*$

                                10,校验IPv4地址

                                \\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,校验IPv6地址

                                (([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]))

                                12,检查URL前缀,应用中难免会出现判断请求的类型是HTTP还是HTTPS

                                 if (!s.match(/^[a-zA-Z]+:\\/\\//)) { s = 'http://' + s; }

                                13,从文本中提取URL

                                ^(f|ht){1}(tp|tps):\\/\\/([\\w-]+\\.)+[\\w-]+(\\/[\\w- ./?%&=]*)?

                                14,验证windows下文件路径和扩展名(下面的例子中为.txt文件)

                                ^([a-zA-Z]\\:|\\\\)\\\\([^\\\\]+\\\\)*[^\\/:*?"<>|]+\\.txt(l)?$

                                15,有时需要抽取网页中的颜色代码,可以使用下面的表达式

                                ^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$

                                16,假若你想提取网页中所有图片信息

                                \\< *[img][^\\>]*[src] *= *[\\"\\']{0,1}([^\\"\\'\\ >]*)

                                17,提取html中的超链接

                           (<a\\s*(?!.*\\brel=)[^>]*)(href="https?:\\/\\/)((?!(?:(?:www\\.)?'.implode('|(?:www\\.)?', $follow_list).'))[^"]+)"((?!.*\\brel=)[^>]*)(?:[^>]*)>

                       三,关于收集来源

                                郑重声明,我写博客只为记录程序猿生活和工作常用工具或解决方案,

                                本次正则的原始出处来自于以下链接哦!!!!

                                http://www.techug.com/20-good-regex

共有 人打赏支持
粉丝 29
博文 60
码字总数 18401
×
ifanjiaxin
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: