JavaScript中正则表达式用于字符串匹配、查找、替换和验证,可通过字面量如/abc/或构造函数new RegExp("abc")创建;常用修饰符包括i(忽略大小写)、g(全局匹配)和m(多行模式);核心元字符有.(任意字符)、\d(数字)、\w(单词字符)、^/$(开头/结尾)、*+/?/{n}(重复次数)、[](字符类)、()(分组);主要方法为test()(检测匹配)、exec()(获取匹配详情)、match()(返回匹配数组)、replace()(替换内容)、split()(正则分割);典型应用如/^\\d{3}-\\d{4}$/验证格式、校验手机号、邮箱等,需熟练掌握元字符组合与实际场景运用。

JavaScript中的正则表达式是处理字符串匹配、查找、替换和验证的有力工具。掌握其语法和使用方法,能极大提升文本处理效率。下面详细介绍JS正则表达式的写法、语法结构及常见应用场景。
创建正则表达式的方式
在JavaScript中,有两种方式创建正则表达式:
- 字面量方式:用斜杠/包围模式,例如:/abc/
- 构造函数方式:使用new RegExp("pattern"),适合动态生成的正则
例如:
const regex1 = /hello/;const regex2 = new RegExp("hello");
正则表达式修饰符(flags)
修饰符写在斜杠后或传入构造函数,控制匹配行为:
立即学习“Java免费学习笔记(深入)”;
- i - 不区分大小写(ignore case)
- g - 全局匹配(global),找到所有匹配而非第一个就停止
- m - 多行模式(multiline),让^和$匹配每行开头结尾
示例:
/hello/i —— 匹配 Hello、HELLO 等/ab/g —— 找出所有 ab 出现的位置
常用元字符与模式
正则中一些特殊字符有特定含义,称为元字符:
- . - 匹配任意单个字符(换行除外)
- \d - 数字,等价于 [0-9]
- \w - 单词字符,包括字母、数字、下划线
- \s - 空白字符(空格、制表符、换行等)
- ^ - 匹配字符串开头
- $ - 匹配字符串结尾
- * - 前一项出现0次或多次
- + - 前一项出现1次或多次
- ? - 前一项出现0次或1次
- {n} - 前一项恰好出现n次
- [abc] - 字符类,匹配括号内任意一个字符
- (...) - 分组,将多个字符当作一个整体
例如:
/^\d{3}-\d{4}$/ —— 匹配如 "123-4567" 的格式常用方法与使用场景
JavaScript中常用的正则相关方法包括:
- test() - 检查是否匹配,返回 true 或 false
- exec() - 返回匹配结果数组,包含详细信息
- match() - 字符串方法,返回所有匹配项
- replace() - 替换匹配内容
- split() - 使用正则分割字符串
实际例子:
const phoneRegex = /^\d{3}-\d{3}-\d{4}$/;phoneRegex.test("123-456-7890"); // true
"Hello world".replace(/world/, "JS"); // "Hello JS"
"one, two, three".split(/\s,\s/); // ["one", "two", "three"]
基本上就这些。熟练使用正则需要多练习常见模式,比如邮箱、手机号、URL的校验。关键是理解元字符含义和组合逻辑,不复杂但容易忽略细节。










