正则表达式-美化版
发布日期:2021-05-14 05:41:31 浏览次数:20 分类:精选文章

本文共 2845 字,大约阅读时间需要 9 分钟。

正则表达式是前端开发中极为强大的工具,能够通过简短的代码实现复杂的文本处理逻辑。熟练掌握正则表达式能够显著提升开发效率。

1. 校验密码强度

密码需包含大小写字母和数字,长度在8-10个字符之间。

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

2. 校验中文

确保字符串仅包含中文字符。

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

3. 由数字、字母或下划线组成的字符串

匹配包含字母、数字和下划线的字符串。

^\\w+$

4. 校验电子邮件地址

验证常见电子邮件格式,包含本地部分和域名。

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

5. 校验身份证号码

支持15位和18位身份证号码验证。

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

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版本

检测IE浏览器的版本信息。

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

10. 校验IP-v4地址

验证标准的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. 校验IP-v6地址

验证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前缀

判断URL是否以HTTP或HTTPS开头。

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

13. 提取URL链接

从文本中提取出完整的URL链接。

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

14. 校验文件路径及扩展名

验证Windows文件路径和扩展名(如.txt文件)。

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

15. 提取Color Hex Codes

匹配十六进制颜色代码。

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

16. 提取网页图片

从HTML中提取图片标签的src属性。

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

17. 提取页面超链接

从HTML中提取所有超链接。

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

18. 查找CSS属性

匹配CSS属性及其值。

^\\s*[a-zA-Z\\-]+\\s*[:]{1}\\s[a-zA-Z0-9\\s.#]+[;]{1}

19. 抽取注释

提取HTML注释内容。

20. 匹配HTML标签

匹配HTML标签及其属性。

<>\\/?\\w+((\\s+\\w+(\\s*=\\s*(?:".*?"|'.*?'|[\\^'">\\s]+))?)+\\s*|\\s*)\\/?>

正则表达式语法参考

以下是正则表达式的基本语法指南,供参考:

  • ^:匹配字符串的开头
  • $:匹配字符串的结尾
  • .:匹配任意字符(注意在特殊字符前需转义)
  • \w:匹配字母、数字和下划线
  • \d:匹配数字
  • [a-z]:匹配特定字符范围
  • {n,m}:匹配重复次数(n到m次)
  • *:重复任意次(0次或更多)
  • ?:重复0次或1次
  • ( ):组合
  • |:或
  • \s:匹配任意空白字符
  • \S:不匹配空白字符

通过这些正则表达式,可以实现各种文本处理任务,从简单的格式验证到复杂的数据提取。

上一篇:参加阿里的Java面试经验
下一篇:餐饮行业的运营

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2025年05月04日 13时20分59秒