在 JavaScript 中,正则表达式是一种强大的工具,用来匹配和操作字符串。正则表达式由一个模式和一些可选的标志组成,可以用来检查字符串是否符合某种模式,替换字符串中的内容,提取字符串中的特定部分等操作。
创建正则表达式
在 JavaScript 中,可以使用两种方式来创建正则表达式:使用字面量和使用构造函数。
使用字面量
// 匹配一个数字 let pattern = /\d/; // 匹配一个邮箱地址 let emailPattern = /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/;
使用构造函数
// 匹配一个数字 let pattern = new RegExp('\\d'); // 匹配一个邮箱地址 let emailPattern = new RegExp('^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$');
正则表达式的标志
在创建正则表达式时,可以指定一些标志来改变匹配的行为。
i
:忽略大小写g
:全局匹配m
:多行匹配
// 忽略大小写匹配 hello let pattern = /hello/i; // 全局匹配数字 let numberPattern = /\d/g;
正则表达式的方法
JavaScript 的字符串对象提供了一些方法来操作正则表达式。
test()
: 测试字符串是否匹配正则表达式exec()
: 在字符串中执行正则表达式匹配
let pattern = /\d/; let str = 'hello123'; console.log(pattern.test(str)); // 输出 true console.log(pattern.exec(str)); // 输出 ["1"]
常用的正则表达式
匹配邮箱地址
let emailPattern = /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/;
匹配手机号码
let phonePattern = /^1[0-9]{10}$/;
匹配 URL
let urlPattern = /^(http|https):\/\/[\w-]+\.[\w-]+$/;
正则表达式是 JavaScript 中非常重要的一部分,熟练掌握正则表达式可以帮助我们更高效地处理字符串操作。