目 录CONTENT

文章目录

正则表达式:你必须掌握的技能之一 · 应用

萧瑟
2023-06-15 / 0 评论 / 0 点赞 / 276 阅读 / 2,399 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2023-07-03,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

本文汇总了一些常用的正则表达式,开发的时候可以直接使用。

常用字符

  • 匹配中文字符: /[\u4e00-\u9fa5]/gm
  • 匹配双字节字符: /[^\x00-\xff]/igm
  • 匹配行尾行首空白: /(^\s*)|(\s*$)/
  • 只能输入数字: /^\d+$/
  • 只能输入n个数字: /^\d{n}$/
  • 至少输入n个以上的数字: /^\d{n,}$/
  • 只能输入m到n个数字: /^\d{m,n}$/
  • 只能由小写英文字母组成: /^[a-z]+$/i
  • 只能由大写英文字母组成: /^[A-Z]+$/
  • 只能由英文和数字组成: /^[a-z0-9]+$/i
  • 只能由英文、数字、下划线组成: /^\w+$/
  • 匹配非零的正整数:^\+?[1-9][0-9]*$
  • 匹配非零的负整数:^\-[1-9][0-9]*$
  • 匹配一年的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。
  • 验证字符长度是否为3-10:^.{3,20}$

常用表单

  • 匹配Email地址 /\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/

  • 匹配URL地址 /^https?:\/\/(([a-zA-Z0-9_-])+(\.)?)*(:\d+)?(\/((\.)?(\?)?=?&?[a-zA-Z0-9_-](\?)?)*)*$/i

  • 匹配手机号 /^(0|86|17951)?(13[0-9]|15[012356789]|166|17[3678]|18[0-9]|14[57])[0-9]{8}$/

  • 匹配身份证号 /^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/

  • 匹配IP地址 (\d{1,3}.){3}\d

  • 匹配邮编 /^[1-9]\d{5}(?!\d)$/

  • 匹配日期 /^[1-2][0-9][0-9][0-9]-[0-1]{0,1}[0-9]-[0-3]{0,1}[0-9]$/

HTML相关

  • 匹配link标签 /\<link\s(.*?)\s*(([^&]>)|(\/\>)|(\<\/link\>))/gi
  • 匹配HTML标签 /<(\S*?) [^>]*>.*?</\1>|<.*?/>/gm
  • 匹配非HTML标签 /^[^<>`~!/@\#}$%:;)(_^{&*=|'+]+$/
  • 匹配script标签 /<script[^>]*>[\s\S]*?<\/[^>]*script>/gi
  • 匹配HTML注释 /<!--[\s\S]*?--\>/g
  • 匹配HTML条件注释 /\[\s*if\s+[^\]][\s\w]*\]/i
  • 匹配非IE的条件注释 /^\[if\s+(!IE|false)\]>.*<!\[endif\]$/i
  • 匹配CSS expression /expression[\s\r\n ]?\(/gi
  • 匹配不合法的HTML标签 /<\W+>/gi
  • 匹配textarea标签 /<textarea[^>]*>[\s\S]*?<\/[^>]*textarea>/gi

从UA中判断平台

  • 是否是IE浏览器 /msie (\d+\.\d+)/i
  • 是否是webkit内核 /webkit/i
  • 是否是chrome浏览器 /chrome\/(\d+\.\d+)/i
  • 是否是Firefox浏览器 /firefox\/(\d+\.\d+)/i
  • 是否为opera浏览器 /opera(\/| )(\d+(\.\d+)?)(.+?(version\/(\d+(\.\d+)?)))?/i
  • 是否为safari浏览器 /(\d+\.\d)?(?:\.\d)?\s+safari\/?(\d+\.\d+)?/i
  • 是否为Android系统 /android/i
  • 是否为iPad /ipad/i
  • 是否为iPhone /iphone/i
  • 是否为Mac OS /macintosh/i
  • 是否为window系统 /windows/i
  • 是否为移动端 /(nokia|iphone|android|ipad|motorola|^mot\-|softbank|foma|docomo|kddi|up\.browser|up\.link|htc|dopod|blazer|netfront|helio|hosin|huawei|novarra|CoolPad|webos|techfaith|palmsource|blackberry|alcatel|amoi|ktouch|nexian|samsung|^sam\-|s[cg]h|^lge|ericsson|philips|sagem|wellcom|bunjalloo|maui|symbian|smartphone|midp|wap|phone|windows ce|iemobile|^spice|^bird|^zte\-|longcos|pantech|gionee|^sie\-|portalmmm|jig\s browser|hiptop|^ucweb|^benq|haier|^lct|opera\s*mobi|opera\*mini|320x320|240x320|176x220)/i

往期精彩:

1、正则表达式:你必须掌握的技能之一 · 概念

2、Vue3解构赋值:让你的代码更简洁、优雅和高效

3、简单易学!使用 Node.js 编写爬虫,跟着教程一步步实现!


weixin

0

评论区