首页 > 其他分享 >第十四天笔记 正则

第十四天笔记 正则

时间:2023-02-23 17:48:47浏览次数:36  
标签:console log 笔记 var 第十四天 正则 test regexp true

第十四天笔记 正则

概述

正则是用于检验对应的字符串的一种特殊表达式,一般用于用户格式验证

正在对象声明

使用// 来声明(常用)

var a=/a/ig// 匹配修饰符
console.log(regexp)

使用new关键字来声明

// 第一个传入的是 正则表达式 第二个传入的是当前匹配模式
var a=new RegExp('a','gi')
console.log(a)

正则的匹配修饰

  • g 全局

  • i 不区分大小写

  • m 换行

  • s 单个匹配

正则对象的方法及属性

  • test 验证是否匹配

  • exec 返回匹配的数组

var regexp= /a/gi // 全局匹配字符串是否有a
       console.log(regexp);
       // 方法
       console.log(regexp.exec("Aoo'o"));
       console.log(regexp.test('hello'));// false
       console.log(regexp.test('apple'));// true
       // exec 执行 返回的是一个数组 类于match
       console.log(regexp.exec("ooAo"));


       // 属性
       console.log(regexp.dotAll);// 是否使用单个匹配s
       console.log(regexp.flags);// 匹配修饰符
       console.log(regexp.global);// 是否全局查找
       console.log(regexp.ignoreCase);// 是否不区分大小写
       console.log(regexp.lastIndex);// 下一次匹配开始索引

正则表达式中的元字符

  • ^ 表示开头

  • $ 表示结尾

    var regexp=/^ab$/ // 以a开头 以b结尾
    console.log(regexp.test('ab'))// true
  • [] 表示里面任意一个元素

  • {} 表示个数 前面的值大于后面

  • () 表示分组

    var regexp = /^ab$/ // 以a开头 以b结尾
           console.log(regexp.test('ab'))// true
           console.log(regexp.test('a1b'));// false
           // [] 表示里面的任意一个元素
           var reg=/^[abc]a$/  // 只匹配aa ba ca
           console.log(reg.test('ab'));// false
           // {}表示个数
           var reg1 = /[abc]{2}/ // aa bb cc /[abc]{2}/==/[abc][abc]/
           // {2,3} 两个到3个 {2,}两个到无穷个 后面大于前面报错
           var reg2=/^[abc]{2,3}$/  //aa bb cc aaa bbb ccc
           // () 表示分组 中间先算
           var reg3=/(ab){2}/ // abab
           console.log(reg3.test('abab'));
  • 数字的表示方式

    \d 表示数字 \D表示非数字

    [0,9]

    console.log(/\d/.test('1a'));//true
           console.log(/[0,9]/.test('1a'));//true
           // \D非数字 大小写表示相反
           console.log(/\D/.test('123'));// falses
  • 字母的表示方式

    // 表示字母 [A-Z]大写字母 [a-z]小写字母
           console.log(/[A-Z]/.test('abc'));// false
           console.log(/[A-Z]/.test('ABC'));// true
  • \w

            // \w 表示数字 字母 下划线
          console.log(/\w/.test('_'));// true
          // \W 表示非数字 字母 下划线
          console.log(/\W/.test('?'));// true
  • \s

        // \s 空白字符 \S 非空白字符
       console.log(/\s/.test(' '));// true
       console.log(/\S/.test(' '));// false
  • +表示 1个到多个{1,}

  • ? 表示0个到1个

  • × 表示0个到多个

  • | 或符号 一般和分组符一起用

  • . 表示任意字符串

正则的转义

概念

转义就是将我们的元字符变为普通字符

方法

  • 将对应的非修饰的字符(反斜杠开头的) 用 [ ] 包起来

  • 使用转义字符 \

支持正则的字符串方法

  • Match 匹配

  • search 查找

  • replace 替换

  • split 分割

  •  

标签:console,log,笔记,var,第十四天,正则,test,regexp,true
From: https://www.cnblogs.com/balloontrue/p/17148876.html

相关文章

  • uniapp vue3 setup开发笔记
    uniappvue3setup写法中使用onload,onshow等生命周期首先通过这种方式引入import{onShow,onHide,onLoad}from"@dcloudio/uni-app"和vue3普通生命周期一样的使用......
  • python学习笔记
    1.变量名称区分大小写(age、Age和AGE是三个不同的变量)2.在函数内部创建一个与全局变量同名的变量:x="awesome"defmyfunc():x="fantastic"print("Pythonis"......
  • 学习笔记——Nginx在linux中的命令
    2023-02-231、Nginx命令(1)开启Nginx安装Nginx之后,在“/usr/local/nginx/sbin”目录中sudo./nginx(2)关闭Nginx,在“/usr/local/nginx/sbin”目录中sudo./nginx-s......
  • 集群调度LSF-学习笔记
    集群-------多台设备HPC集群----多台用于计算的设备集群调度-LSF:LSF是一种强大的工作负载管理平台,提供基于各种策略的智能调度功能,利用分布式的基础架构资源来提高整体的......
  • Java国际化号码验证方法,国内手机号正则表达式
    Java国际化号码验证方法,国内手机号正则表达式 中国电信号段133、149、153、173、177、180、181、189、199中国联通号段130、131、132、145、155、156、166、175、17......
  • Hive笔记之collect_list/collect_set(列转行)
    Hive中collect相关的函数有collect_list和collect_set。它们都是将分组中的某列转为一个数组返回,不同的是collect_list不去重而collect_set去重。 做简单的实验加深理......
  • 读书笔记:价值投资.十三.对长期持有的误解
    对长期投资的误解我总觉得价值投资就应该长期持有的说法是对价值投资的误解.误解最大的莫过于"长期持有就是价值投资".但是,买到了便宜的好股票最好不轻易出手.只......
  • Django 初步运行过程分析笔记
    2.django运行过程分析第一个过程分析:django启动过程pythonmangage.pyrunserver0.0.0.0:8000这个命令先被python的sys.argv接收起来,保存成[mangage.py,runserver,0.0......
  • c++学习笔记——模板和IO(二)
    C++异常前言:异常处理就是处理程序中的错误。所谓错误是指在程序运行的过程中发生的一些异常事件(如:除0溢出,数组下标越界,所要读取的文件不存在,空指针,内存不足等等)在对C语......
  • 给一台10年的华硕笔记本电脑A85V型号安装最新版本的centos stream 9系统
    ######################准备1台华硕笔记本电脑A85V型号,基本配置是:12G内存,128G固态硬盘,500G普通硬盘,4核CPU,i5处理器(是2013年买的,今年是2023年,已经10年了);1个128G的金士顿......