JavaScript正则表达式

article/2025/7/15 8:38:16

参考笔记:JS之正则表达式_js 正则-CSDN博客


目录

一、正则表达式介绍

        1. 快速入门案例1

        2. 什么是正则表达式

        3. 快速入门案例2

        4. 正则表达式"按位"描述规则

二、正则表达式的定义方式

三、修饰符 modifiers

四、正则表达式方法

        1. test()

        2. exec()

        3. search()

        4. match()

        5. replace() 

五、元字符

        1. 常用的元字符

        2. 使用案例

六、方括号表示法

        1. 方括号表达式

        2. 使用案例

七、 量词

        1. 常用的量词

        2. 使用案例

八、在开发中如何正确使用正则表达式?


一、正则表达式介绍

        1. 快速入门案例1

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><script>// var reg = /pattern/modifiers = /匹配规则/匹配修饰符// 定义正则表达式var reg = /e/i //匹配规则:字符'e';匹配修饰符:i,表示对大小写不敏感// 定义一个字符串var str = "helloE"// 匹配console.log("str中是否包含e或者E?:" + reg.test(str))//若str中包含e或E,则返回true,反之返回false</script>
</head>
<body>
</body>
</html>

        运行结果:


        2. 什么是正则表达式

        正则表达式(regular expression)描述了字符串的"构成模式",经常被用于检查字符串是否符合预定的格式要求

        非常经典的使用场景就是登录/注册验证,如下所示: 

        3. 快速入门案例2

        需求:检验某个字符串是否为 6 位数字

        4. 正则表达式"按位"描述规则

        正则表达式"按位"描述规则:指的是它一位一位的描述字符串的构成形式

        例如:判断某个字符串是否以字母 m 开头,然后是 3 个数字,最后以字母 n 结尾,则正则表达式如下所示:

var reg = /^m\d\d\dn$/

^:表示开头

$:表示结尾

\d:数字

\d\d\d可以简写成\d{3}

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8">
</head><body><script>// 定义正则表达式:以m开头,n结尾,中间是3位数字var reg = /^m\d{3}n$/;var str1 = 'm123n';var str2 = 'm1234n';var str3 = 'm12345n';var str4 = '123456';console.log(reg.test(str1));     // trueconsole.log(reg.test(str2));     // falseconsole.log(reg.test(str3));     // falseconsole.log(reg.test(str4));     // false</script>
</body></html>

 二、正则表达式的定义方式

//pattern:匹配规则  modifiers:匹配修饰符
var reg = new RegExp(pattern,modifiers);
或者更简单的方式:
var reg =/pattern/modifiers; 

        注:modifiers 为可选项,根据具体业务需求判断是否需要 

三、修饰符 modifiers


http://www.hkcw.cn/article/UWrotkBhKI.shtml

相关文章

制作一款打飞机游戏63:自动保存

1.编辑器的自动保存实现 ‌目标‌&#xff1a;将自动保存功能扩展到所有编辑器&#xff0c;包括脑编辑器、模式编辑器、敌人编辑器和动画/精灵编辑器。‌实现方式‌&#xff1a; ‌代码复制‌&#xff1a;将关卡编辑器中的自动保存代码复制到其他编辑器中。‌标记数据变更‌&a…

“百亿补贴”商家承担比例升至70%-80%,京东外卖家也没“余粮”了?

内容/咏鹅 校对/莽夫 今日雷锋网转引新浪财经一则消息&#xff0c;称「京东外卖“百亿补贴”规则再调整&#xff1a;商家承担比例升至70%-80%」。 有多位商家公开爆料&#xff0c;京东外卖将此前平台与商家各承担50%的补贴成本比例&#xff0c;调整为商家承担70%-80%&#xff…

详解Seata的四种事务模式:AT、TCC、SAGA、XA

一、AT 模式&#xff08;Auto Transaction - 默认模式&#xff09; 核心原理&#xff1a; 基于 SQL 解析的自动补偿机制&#xff0c;通过代理数据源实现业务无侵入。 工作流程&#xff1a; 关键特性&#xff1a; 自动生成补偿&#xff1a; 前置镜像&#xff08;Before Image&…

【MySQL系列05】构建99.999%高可用MySQL: 从主从复制到企业级集群架构详解

关键词&#xff1a; MySQL高可用架构、主从复制、读写分离、故障转移、MySQL集群、InnoDB Cluster、Percona XtraDB、MySQL Router、ProxySQL、数据库容灾 摘要&#xff1a; 本文从生活化的超市收银员比喻出发&#xff0c;深入浅出地讲解MySQL高可用架构的构建方法。从基础的主…

力扣刷题Day 65:单词搜索(79)

1.题目描述 2.思路 方法1&#xff08;自己写的深度优先的回溯方法&#xff09;&#xff1a;遍历网格&#xff0c;每走过一格都将其坐标加入visited集合&#xff0c;然后向上、下、左、右四个方向查找可行路径&#xff0c;如果找到可行路径则一路向下延伸查找&#xff0c;如不可…

多卡训练核心技术详解

多卡训练核心技术详解 多卡训练 主要围绕分布式环境初始化、模型并行化、数据分片和梯度同步展开。下面结合您的代码,详细解释这些核心部分: 并行执行命令 torchrun --nproc_per_node=5 TokenLossMulCard.py 1. 分布式环境初始化 def init_distributed():init_process_…

PDT经理的角色认知

PDT团队 在IPD体系导入过程中&#xff0c;PDT经理&#xff08;又称LPDT&#xff0c;Leader of Product Development Team&#xff09;是最关键的角色之一&#xff0c;本篇文章中汉捷咨询就PDT经理的角色认知进行探讨。要认识PDT经理首先需要认识PDT&#xff0c;PDT&#xff08…

历年浙江大学计算机保研上机真题

2025浙江大学计算机保研上机真题 2024浙江大学计算机保研上机真题 2023浙江大学计算机保研上机真题 在线测评链接&#xff1a;https://pgcode.cn/school?classification1 最小包围矩形 题目描述 给定一系列二维平面点的坐标 ( x , y ) (x, y) (x,y)&#xff0c;其中 x x…

BKP(备份寄存器)和 RTC(实时时钟)

什么是BKP&#xff1f; 备份寄存器&#xff08;BackupRegister&#xff09;是42个16位的寄存器&#xff08;不同设备存在差异&#xff1a;20字节&#xff08;中容量和小容量&#xff09;/84字节&#xff08;大容量和互联型&#xff09;&#xff09;&#xff0c;可用来存储 最多…

antDesignVue中a-upload上传组件的使用

工作中需要使用上传组件&#xff0c;记录一下a-upload部分属性用法 1.showUploadList属性使用 使用:showUploadList"{ showRemoveIcon: true ,showDownloadIcon: true }"属性可控制右侧下载&#xff0c;删除图标 2.如何实现回显功能 使用:defaultFileList"fil…

基于RK3568/RK3588/全志H3/飞腾芯片/音视频通话程序/语音对讲/视频对讲/实时性好/极低延迟

一、前言说明 近期收到几个需求都是做音视频通话&#xff0c;很多人会选择用webrtc的方案&#xff0c;这个当然是个不错的方案&#xff0c;但是依赖的东西太多&#xff0c;而且相关组件代码量很大&#xff0c;开发难度大。所以最终选择自己属性的方案&#xff0c;那就是推流拉…

借助DS用python帮你编写脚本(辅助开发测试)

最近在做一个音频采集识别项目&#xff0c;采集20HZ到20KHZ各个频带最大分贝数&#xff08;DB&#xff09;&#xff0c;需要用到各个频段的测试音频来验证程序的正确性。 借助Deepseek&#xff0c;原本对python编程没有学过&#xff0c;也能轻松学会。 提问&#xff1a;pytho…

【图像处理基石】如何进行图像畸变校正?

图像畸变校正常用于计算机视觉、摄影测量学和机器人导航等领域&#xff0c;能够修正因镜头光学特性或传感器排列问题导致的图像失真。下面我将介绍几种常用的图像畸变校正算法&#xff0c;并提供Python实现和测试用例。 常用算法及Python实现 1. 径向畸变校正 径向畸变是最常…

技术创新如何赋能音视频直播行业?

在全球音视频直播行业的快速发展中&#xff0c;技术的持续创新始终是推动行业进步的核心动力。作为大牛直播SDK的开发者&#xff0c;我很荣幸能分享我们公司如何从产品的维度出发&#xff0c;精准把握市场需求&#xff0c;并不断推动产品的发展&#xff0c;以满足不断变化的行业…

我的世界服务端搭建

文章目录 我的世界服务端搭建使用forge搭建服务端确保服务器的 Java 环境安装1.20.1服务端配置文件修改启动游戏服务器 Minecraft server.properties 文件解析**基础设置****世界设置****网络与安全****性能优化****高级功能****配置文件示例****注意事项**Minecraft 白名单系统…

官宣正式分手 特朗普马斯克说了什么临别感言

官宣正式“分手” 特朗普马斯克都说了什么“临别感言”当地时间5月30日,美国总统特朗普和美国企业家、政府效率部负责人埃隆马斯克在白宫举行新闻发布会。特朗普称赞“政府效率部”成就在发布会上,特朗普对马斯克领导的“政府效率部”所达成的成就表示称赞,他称“政府效率部…

STM32通过rt_hw_hard_fault_exception中的LR寄存器追溯程序问题​

1. 问题现象 程序运行导致rt_hw_hard_fault_exception 如图 显示错误相关代码 struct exception_stack_frame {uint32_t r0;uint32_t r1;uint32_t r2;uint32_t r3;uint32_t r12; uint32_t lr; // 链接寄存器 (LR)uint32_t pc; // 程序计数器 (PC)uint32_t psr; // 程序状态…

AgenticSeek,开源本地通用AI Agent,自主执行任务

AgenticSeek是一款完全本地化的开源AI助手&#xff0c;作为Manus的开源替代品&#xff0c;专为保护用户隐私而设计。它能够在本地设备上执行多种任务&#xff0c;包括网页浏览、代码编写和复杂项目的规划&#xff0c;确保所有操作和数据均在用户的设备上完成。 AgenticSeek是什…

深入理解 Java 反射机制:动态编程的核心利器

一、反射机制的本质与核心价值 在 Java 的世界里&#xff0c;反射机制&#xff08;Reflection&#xff09;被视为连接静态编译与动态执行的桥梁。当程序运行时&#xff0c;反射允许我们在内存中动态获取类的完整结构信息&#xff0c;并对类的成员&#xff08;字段、方法、构造…

群晖synology nas安装curl教程

在群晖nas系统上发现没有curl这个命令,想通过opkg进行安装,发现opkg这个套件也没有,本章教程介绍如何安装opkg,并通过opkg 安装上curl命令工具,nas的系统版本是:x86_64 GNU/Linux synology_apollolake_918+ 一、安装opkg wget -O - http://bin.entware.net/x64-k3.2/inst…