首页 > 其他分享 >Web APIs 6:正则表达式

Web APIs 6:正则表达式

时间:2024-09-30 11:52:27浏览次数:10  
标签:Web console log APIs 正则表达式 字符 test 匹配 true

Web APIs 6:正则表达式

1.定义及使用场景
  • 用于匹配字符串中字符组合的模式,在JS中属于对象
  • 通常用来查找、替换哪些符合正则表达式的文本,不属于JS专属,许多语言都支持正则表达式
  • 使用场景:验证表单、过滤敏感词
2.语法
  • 定义规则——>根据规则去查找
  • 定义规则
    • const 变量名 = /表达式/
  • 判断是否有符合规则的字符串,返回true|false
    • 规则.test(检测目标)
  • 检索符合规则的字符串,返回数组(记住上面的test就行)
    • 规则.exec(被检测的字符串)
<script>
    //要检测的字符串
    const str = '数据分析、数学建模、数据库、高等数学'
    //1.定义正则表达式 检测规则
    const reg = /数学/
    //2.检测方法
    console.log(reg.test(str)) //返回true
  </script>
3.元字符
  • 普通字符:字母、数字等,只能匹配完全相同的字符

  • 特殊字符:具有特殊含义的字符,eg:[a-z]表示26个英文字母

  • 元字符分类

    • 边界符:提示字符所处的位置

      //边界符 ^表示以什么开头 $以什么结尾
          console.log(/^哈/.test('哈哈哈'))  //true
          console.log(/^哈/.test('二哈哈哈哈哈')) //false 
          console.log(/^哈$/.test('哈哈哈')) //false 精确匹配,只有完全相同才为true
      
    • 量词:表示重复次数

      量词说明
      *重复零次或多次
      +重复一次或多次
      重复零次或一次
      {n}重复n次
      {n,}重复n次或更多次
      {n,m}重复n到m次
    console.log(/^哈*/.test('哈哈哈哈哈'))  //true
    console.log(/^哈*$/.test('哈很哈哈'))  //false
    console.log(/哈+$/.test('很哈哈哈'))  //true
    console.log(/^哈?$/.test('哈哈哈'))  //false
    console.log(/^哈{4}$/.test('哈哈哈'))  //false
    console.log(/^哈{3}$/.test('哈哈哈'))  //true
    
    • 字符类::\d表示0~9
      • […]匹配字符集合,只要括号里的任意字符出现都返回true
      • [^]:取反
      • . 匹配除换行符之外的任何单个字符
      • 预定义类:
    预定类说明
    \d匹配0-9的任一数字,[0-9]
    \D匹配所有0-9以外的数字
    \w匹配任意的字母、数字、下划线,相当于[A-Za-z0-9_]
    \W除所有数字、字母、下划线以外的字符
    \s匹配空格(包括换行符、制表符、空格符等),[\t\r\n\v\f]
    \S匹配非空格的字符
4.修饰符:
  • 约束正则执行的某些细节行为,如是否区分大小写,是否支持多行匹配等

  • 语法:/表达式/修饰符

  • i修饰符:ignore,不区分大小写

  • g修饰符:global,匹配所有满足表达式的结果

 console.log(/^java$/i.test('JAVA')) //true
  • replace替换:字符串.replace(/正则表达式/,‘替换的文本’)
 const str = 'java是一门编程语言,Java很有趣'
 const re = str.replace(/java/ig, '前端') // i是不区分大小写,g是全局替换
 console.log(re)

注:web APIs模块到这里就基本结束啦~后面还会继续更新JS中es6的新语法相关知识,有问题可以在评论区留言哦!

标签:Web,console,log,APIs,正则表达式,字符,test,匹配,true
From: https://blog.csdn.net/weixin_72043867/article/details/142653700

相关文章

  • ASP.NET WebApi OWIN 实现 OAuth 2.0
    ASP.NETWebApiOWIN实现OAuth2.0 OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。OAuth允许用户提供一个令牌,而不是用户名和密码来访问他们存放在特定服务提供者......
  • ASP.NET WebApi OWIN 实现 OAuth 2.0(自定义获取 Token)
    ASP.NETWebApiOWIN实现OAuth2.0(自定义获取Token) 相关文章:ASP.NETWebApiOWIN实现OAuth2.0之前的项目实现,Token放在请求头的Headers里面,类似于这样:Accept:application/jsonContent-Type:application/jsonAuthorization:BearerpADKsjwMv927u...虽然这是......
  • WEB 编程:富文本编辑器 Quill 配合 Pico.css 样式被影响的问题之还是 iframe
    这个系列已经写了3篇了。这篇写如何使用iframe解决标题里面提到的问题。前情提要请看上一篇博文:WEB编程:富文本编辑器Quill配合Pico.css样式被影响的问题之ShadowDOMWEB编程:富文本编辑器Quill配合Pico.css样式被影响的问题之ShadowDOM-CSDN博客缘由缘由仍......
  • 【Web APIs day 03 事件流、事件委托、其他事件:优化多个事件绑定和实现常见网页交互】
    WebAPIs-第3天目标:学习事件流,事件委托,其他事件等知识,优化多个事件绑定和实现常见网页交互事件流移除事件监听其他事件元素尺寸与位置综合案例事件流为什么要学习事件流?可以帮我们解决一些疑惑,比如点击子盒子会会弹出2次的问题事件流指的是事件完整执行过程中的......
  • Delphi 12.2 新增的 WebStencils 尝鲜
    WebStencils是Delphi新增的服务器端WEB控件 这个玩意怎么用,用起来有意义吗?试试才知道。以下测试的描述都是基于DelphiWebBroker这个WEB服务器端框架。最新出来的,各方面资料很少,官方也没有详细文档,只能自己摸索。网上我能够搜到的相关资料:corneliusdavid/webste......
  • 阿里云 SAE Web:百毫秒高弹性的实时事件中心的架构和挑战
    作者:胡志广(独鳌)背景Serverless应用引擎SAE事件中心主要面向早期的SAE控制台只有针对于应用维度的事件,这个事件是K8s原生的事件,其实绝大多数的用户并不会关心,同时也可能看不懂。而事件中心,是希望能够成为一个更高维度入口,可以总览全局的事件(着重于异常事件),并且配置相关......
  • webGL入门(五)绘制多边形
    代码:<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title>Document</title>......
  • webGL入门对于LINES_STRIP与LINE_STRIP绘制连线的不同之处
    图片对比:上图为LINE_STRIP 上图为LINES_STRIPLINE_STRIP代码:<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0&q......
  • java使用正则表达式验证手机号和电话号码和邮箱号码的方法
    验证手机号我国的手机号一般是以1开头,后面跟着10位数字。因此,可以用如下正则表达式:publicstaticbooleanisValidPhoneNumber(StringphoneNumber){Stringregex="^1[3-9]\\d{9}$";//适用于中国手机号returnphoneNumber.matches(regex);}验证电话号码电话......
  • Web服务器小项目(Linux / C / epoll)
    欢迎访问我的另一个博客:https://xingzhu.top/注意:前置知识:HTTP:https://xingzhu.top/archives/web-fu-wu-qiLinux多线程:https://xingzhu.top/archives/duo-xian-cheng源码放github上了,欢迎star:https://github.com/xingzhuz/webServer思路实现代码server.h......