当前位置: 首页 > article >正文

正则表达式的基本应用以及查询工具

首先,是对于基本的正则表达式的应用以及部分介绍(见代码注释部分):

以javaScript为例

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>

</body>
<script>
  /*
    正则表达式
      1.表示特定规则的字符串
      2.通过特定的规则对于字符串进行校验
    定义正则表达式
      1.定义正则表达式
        let reg=/正则表达式规则/
      2.使用
        reg.test(被判断的字符串)
          |-true-被判断的字符串符合正则表达式规则
          |-false-被判断的字符串不符合正则表达式规则
    正则表达式的规则:
      ^       匹配字符串的开始
      $       匹配字符串的结尾
      []      匹配一个字符
      {m}     m个字符
      {m,n}   最少是m个字符
  */
  //如果要通过验证,判断一位 只能有一个a-z的字母
  let reg1 = /^[a-z]$/;
  console.log(reg1.test("z"));//true
  console.log(reg1.test("p1"));//false
  //两位的判断
  let reg2 = /^[a-z][1-9]$/;
  console.log(reg2.test("z2"));//true
  console.log(reg2.test("2e"));//false
  // 多位判断
  let reg3 = /^[a-z]{6,10}$/
  console.log(reg3.test("sadhsa"));//true
  console.log(reg3.test("sss1sa"));//false
  console.log(reg3.test("sadhsadsdadasdassa"));//false
  //数字和字符的多位判断 6-10位可含数字和字母
  let reg4 = /^[0-9A-Za-z]{6,10}$/
  console.log(reg4.test("asd221"));//true
  //要求第一位是数字 后面是数字字母都可以
  let reg5 = /^[0-9][a-zA-Z0-9]{5,9}$/;
  console.log(reg5.test("asd2345"));//false
  console.log(reg5.test("1asd2345"));//true
  let reg6 = /[0-9][a-zA-Z0-9]{5,9}/;//没有^$只要有部分满足正则即可
  console.log(reg6.test("021AAAAAAAAAAAAAAAAAAAAA"));//true
  let reg7 = /^[0-9][a-zA-Z0-9]{5,9}/;
  console.log(reg7.test("8asjdk"));//true
  console.log(reg7.test("8asjdkasjhdaj"));//true
  console.log(reg7.test("s8asjdkasjhdaj"));//false
  let reg8 = /[0-9][a-zA-Z0-9]{5,9}$/;
  console.log(reg8.test("a118asjdk"));//true
  //对于特殊字符的应用
  //由于*是元字符 因此需要转义
  let reg9 = /^\*{3}$/
  console.log(reg9.test("***"));//true
  //判断电子邮箱:
  let reg10 = /^[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?$/;
  console.log(reg10.test("2143242@qq.com"));
</script>

</html>

推荐的使用正则查询的网页:

网页地址:在线正则表达式测试


http://www.kler.cn/a/589156.html

相关文章:

  • 【从零开始学习计算机科学】设计模式(五)MVC模式、业务代表模式、组合实体模式、数据访问对象模式、前端控制器模式、拦截过滤器模式、服务定位器模式、传输对象模式
  • 多种注意力机制(文本->残差->视频)
  • 《灵珠觉醒:从零到算法金仙的C++修炼》卷三·天劫试炼(58)七宝妙树破数独 - 数独求解(回溯剪枝)
  • 量子计算与佛法智慧:一场关于二元对立的跨时空对话
  • 高亮动态物体——前景提取与动态物体检测器(opencv实现)
  • Elixir语言的容量规划
  • 【金融杂谈】价格内卷死局——谁造成了价格内卷?
  • 【Java--数据结构】优先级队列( PriorityQueue)
  • 【大语言模型】【个人知识库正式内容】提示工程:如何设计模型的提示语
  • 大模型最新面试题系列:微调篇之微调基础知识
  • 使用python去编写PDF转换成为EPUB以及MOBI工具
  • Linux如何在设备树中表示和引用设备信息
  • 基于Springboot+服务器磁盘的本地文件存储方案
  • 二分算法刷题
  • 【uni-app运行错误】SassError: expected selector @import “@/uni.scss“;
  • 11 Collection集合、Map集合:分类、功能、遍历、底层原理,Stream流:获取、中间方法、终结方法 (黑马Java视频笔记)
  • 探索 Rust 高效 Web 开发:Hyperlane 框架深度解析
  • Spring Boot 参数校验异常与错误编码映射方案
  • 线性回归中的最小二乘法:直接法与梯度下降的比较
  • Android 高版本兼容的原生定位工具类封装(支持 Android 5.0 到 Android 14)