正则基础知识

2023-05-16

正则 RegExp:由相关元字符和修饰符组成的一个规则,匹配 验证和捕获(只用来处理字符串)
可以理解为两个斜杠中间包含一些内容就是正则

元字符:/元字符/ 两个斜杠之间包起来的内容

正则:它就是用来处理字符串的一个规则;

●正则匹配:
编写一个规则,验证某个字符串是否符合这个规则,正则匹配使用的是test方法
●正则捕获:
编写一个规则,在一个字符串中把复合规则的内容都获取到 正则捕获使用的方法 正则的exec方法、字符串中的split、replace、match等方法都支持正则

正则创建
● 字面量 var reg = /a\d+/ig;
● 实例 var reg = new RegExp (“a\d+”,“ig”);
注意:一个杠的它以为是字符
实例创建中 \d=>\d (特殊元字符要加 两个斜杠 )

任何一个正则都是由 元字符和修饰符 组成的

元字符
1、特殊元字符
\ 转义字符 转换成本来的意思
. 任意字符 除了 \n(换行符)
\d 0到9之间任意一个数字 等价于[0-9]
\D 除了0到9之间的数字
\b 匹配边界符 ‘123 a12’ / \b \d / 边上是0到9之间的数匹配
\B 非边界 ‘123 a12’ / \B \d / 边上不能是0到9之间的数匹配
\w 数字 字母 下划线_中的任意一个字符 等价于[0-9 a-z A-Z]
\W 除了\w
\n 换行符
\s 空白符
\S 非空白符
[xyz] x或y或z中的任意一个
[^xyz] 除了x或y或z中的任意一个
x|y x或者y [x|y|z]
[a-z] a到z中的任意一个 是一个范围
[^a-z] 除了a到z中的任意一个

2、量词元字符
(谁在它们前面 谁就出现…次)(出现多次必须是连续的 eg:aaaaaa)
* 出现0到多次
? 出现0或1次 可有可无
+ 出现1到多次 至少出现1次
{n} 出现n次 例如{2} 只能出来2次 (连续)
{n,} 出现n到多次 到少出现n次 多了不限
{n,m} 出现n到m次 最少出现n次 最多出现m次

3、其它元字符
^ 以什么开头
$ 以什么结尾
( ) 分组:捕获将大正则分成小正则 改变优先级
?: 只匹配不捕获
?= 正向预查 例如 ?=\d+ 只捕获后面跟着一堆数的前面字符
?! 负向预查

4、普通元字符 (代表本意)
除了以上这些 其它都是普通元字符 例如 reg=/abc/

修饰符 (写在斜杠外面的叫做修饰符)
i:ignoreCase 忽略大小写
g:global 全局
m:multiline 多行匹配 (可以把每一行的开头匹配到)

                         eg:<br>换行 01行 hello 
                                      02行 你好 (01 02行 都能匹配到)

test 用来验证字符是否符合正则规则 返回布尔值

1.png

一个\d代表一位数 (只能是…位数)\d\d 包含两位数 还需是连续的 才能匹配 ^\d\d$ 只能是两数字

2.png

验证的字符串 要以a作为开头或者以z作为结尾
3.png
4.png

转译字符只对他最右侧的起作用
5.png

两个斜杠转阿转 最后他俩都成了普通的杠
三个斜杠转阿转 最后前俩成了普通的傻杠 最后一个是\d 杠生赢家
6.png

   var reg=/^18|19$/;//只要以18开头  或是以19结尾的都符合  都是true     
   var reg1=/^(18|19)$/;//用括号包起来  改变了优先级   只能是18或者19  

var reg=/^(18|19)$/;
如果用括号包起来 只有18 和 19符合
小括号分组的作用:
● 改变一些默认的优先级
● 分组引用
● 分组捕获

8.png

9.png
原本是先看左边再看右边 加了括号改变优先级 直接看括号中间

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

正则基础知识 的相关文章

  • OBS推流工具使用说明

    一 软件介绍 1 1 什么是OBS Open Broadcaster Software xff08 简称OBS xff09 是目前市面上最好用的直播软件 xff0c 支持 OS X Windows Linux操作系统 xff0c 适用于多种
  • 一文全解经典机器学习算法之支持向量机SVM(关键词:SVM,对偶、间隔、支持向量、核函数、特征空间、分类)

    文章目录 一 xff1a 概述二 xff1a 间隔与支持向量三 xff1a 对偶问题 xff08 1 xff09 什么是对偶问题 xff08 2 xff09 SVM对偶问题 xff08 3 xff09 SMO算法 四 xff1a 核函数 x
  • 【数据聚类|深度聚类】Nearest Neighbor Matching for Deep Clustering(NNM)论文研读

    文章目录 Abstract Intorduction Related work Deep Clustering Contrastive Representation Learning Methodology Unsupervised Rep
  • (数字图像处理MATLAB+Python)第六章图像平滑-第一节:图像平滑概述和空间域平滑滤波

    文章目录 一 xff1a 图像中的噪声 xff08 1 xff09 图像噪声分类 xff08 2 xff09 图像噪声的数学模型 xff08 3 xff09 程序 二 xff1a 空间域平滑滤波 xff08 1 xff09 均值滤波A xf
  • 二进制里的青春与爱

    我要挥舞着笔墨 xff0c 把人生写得淋漓尽致 xff1b 我要敲击着键盘 xff0c 把世界编得明明白白 xff01 我的青春在指尖流逝 xff0c 我的爱在黑白屏前显现 题记 时间匆匆 xff0c 岁月如流 时间的推手催促着我匆忙赶路
  • 使用 Java 实现快速排序(详解)

    一 概述 最近在看一些面试题 xff0c 发现很多面试过程中都会要求手写快速排序 xff0c 查阅一些博客发现别人写的并不是特别清楚而且也很难记住 xff0c 所以为了更好的掌握这个算法 xff0c 所以在这篇文章中 xff0c 将自己的学
  • CentOS7搭建Samba共享文件夹 设置无密码登录

    搭建之前 xff1a 关闭防火墙 CentOS7默认的防火墙不是iptables xff0c 而是firewalle 停止firewalld服务 systemctl stop firewalld 禁用firewalld服务 systemct
  • 查看 openstack 组件日志

    openstack 部署方式 kolla ansible 使用 kolla ansible 部署方式时 xff0c 所有组件的日志文件会外挂到宿主机上 xff08 都是使用容器启动的 xff09 xff0c 可以在相应节点的 var log
  • 15th 【最短路 dijkstra】最小花费

    最小花费 在n个人中 xff0c 某些人的银行账号之间可以互相转账 这些人之间转账的手续费各不相同 给定这些人之间转账时需要从转账金额里扣除百分之几的手续费 xff0c 请问A最少需要多少钱使得转账后B收到100元 输入文件 第一行输入两个
  • 使用VNC远程登录百度智能云服务器

    使用VNC服务远程登录对浏览器有一定的要求 xff0c 现在只支持如下版本的浏览器 xff0c 使用之前注意VNC页面的提示 浏览器名称版本Google Chrome16 43 Firefox3 6 43 iOS Safari6 1 43
  • Linux环境下为普通用户添加sudo权限

    系统环境 xff1a Centos6 5 1 背景 xff1a sudo是Linux系统管理指令 xff0c 是允许系统管理员让普通用户执行一些或者全部root命令的一个工具 Linux系统下 xff0c 为了安全 xff0c 一般来说我们
  • 利用jquery实现当前时间动态显示

    html代码 xff1a lt div id 61 34 time 34 gt lt div gt jQuery代码 lt script type 61 34 text javascript 34 gt setInterval functi
  • Turtlebot3 Gazebo仿真环境下深度强化学习DQN开发环境构建

    1 Anaconda2 安装 2 Tensorflow安装 ubuntu18系统anaconda安装tensorflow qq 39429669的博客 CSDN博客 3 下载并编译源码 本文先使用github中开源的机器学习的源码进行学习
  • Python数据挖掘 - 第一部分

    文章目录 第一章 数据挖掘库的安装第二章 Matplotlib2 1 matplotlib简介2 2 折线图 xff08 plot xff09 与基础绘图功能2 3 散点图 xff08 scatter xff09 2 4 柱状图 xff08
  • TortoiseGit解决冲突

    TortoiseGit解决冲突 问题概述场景重现解决冲突 问题概述 在项目实施过程中 xff0c 多人维护同一份文件或代码时经常会在本地Commit完再从远程仓库Pull时出现冲突 这时需要保留自己的内容 xff0c 同时也保留远程仓库原来
  • axios的简单封装

    前言 在每次使用原装的axios发送 http请求时 如果需要token验证 xff0c 则都需要创建拦截器 xff0c 添加 39 token 39 请求头 xff0c 或者在config中具体的请求体中添加 xff0c 是一个非常麻烦的
  • 【操作系统】RT-Thread 入门学习

    一 嵌入式操作系统 1 1 软实时与硬实时 强实时操作系统 xff1a 严格限定在规定时间内完成任务 xff0c 否则就会导致灾难性的发生 xff0c 例如导弹拦截系统 汽车引擎系统等 弱实时操作系统 xff1a 可以允许偶尔出现一定的时间
  • windows10安装NVIDIA显卡驱动+cuda10.0教程

    windows10安装NVIDIA显卡驱动 43 cuda10 0教程 1 安装个鲁大师2 确定本机是否支持GPU加速3 更换至匹配的显卡驱动4 下载和安装cuda和cudnn5 验证6 游戏加速7 分享个漂亮的壁纸 1 安装个鲁大师 查看
  • 生成小批量数据集

    shell脚本随机筛选一个目录下后缀为2 4 6 8的 mp4文件 span class token function find span mnt sdb dataset 20181217 RX5 zheA5MV46 name mp4 sp

随机推荐