51人参与 • 2026-08-27 • 正则表达式
今天给大家分享一下前端开发中正则表达式的核心知识点和实战用法。正则表达式在字符串处理、表单验证等场景里非常实用,掌握它能让你的代码更高效。
当然在你了解了什么是正则后,你也可以灵活的使用插件来为你服务,例如any-rule等。
正则表达式是一种用来匹配字符串的强大工具,在 js 中我们通常用字面量方式定义
const reg = /需要匹配的规则/修饰符;
const reg = /西游记/g; const str = '西游记是四大名著之一,我爱看西游记'; console.log(reg.test(str)); // true console.log(reg.exec(str)); // ["西游记", index: 0, ...] console.log(str.match(reg)); // ["西游记", "西游记"] console.log(str.replace(reg, '红楼梦')); // "红楼梦是四大名著之一,我爱看红楼梦"
修饰符用来调整正则的匹配模式
const reg = /you/gi; const str = 'you是you俺是俺you不是俺俺不是you'; console.log(str.match(reg)); // ["you", "you", "you", "you"]
// 匹配独立的单词 "an"
const reg1 = /\ban\b/ig;
const str1 = 'an apple,an ant';
console.log(str1.match(reg1)); // ["an", "an"]
// 匹配以 "ab" 开头的字符串
const reg2 = /^ab/;
console.log(reg2.test("aabab")); // false
// 匹配以 "ab" 结尾的字符串
const reg3 = /ab$/;
console.log(reg3.test("aababb")); // false
// 精确匹配单个字符 "a"
const reg4 = /^a$/;
console.log(reg4.test('a')); // true

// 匹配以 0 个或 1 个 "a" 结尾的字符串
const reg = /a?$/;
console.log(reg.test('a')); // true
console.log(reg.test('aa')); // false

// 匹配包含 a、b、c 中任意一个字符的字符串
const reg = /[abc]/;
console.log(reg.test("ededfd")); // false
// 匹配非数字字符
const reg5 = /[^0-9]/;
console.log(reg5.test('adad')); // true
// 日期格式转换:2026-01-30 → 01/30/2026
const data = '2026-01-30';
const reg1 = /^(\d{4})-(\d{2})-(\d{2})$/;
console.log(data.replace(reg1, '$2/$3/$1')); // "01/30/2026"
// 匹配"西游记"或"红楼梦"
const reg2 = /西游记|红楼梦/;
console.log(reg2.test("红楼梦")); // true
// 13721333097 → 137****3097
const data1 = '13721333097';
const reg1 = /^(\d{3})(\d{4})(\d{4})$/;
console.log(data1.replace(reg1, '$1****$3'));
// 验证6-16位字母、数字、下划线
const reg2 = /^\w{6,16}$/;
console.log(reg2.test('aba123456_')); // true
console.log(reg2.test('1234567890?')); // false
// 匹配 #ff0000 或 #0f0 格式
const reg3 = /^#[a-fa-f0-9]{6}$|^#[a-fa-f0-9]{3}$/;
console.log(reg3.test('#ff0000')); // true
console.log(reg3.test('#0f0')); // true
// 匹配 00:00 到 23:59 的时间
const reg4 = /^([01]\d|2[0-3]):([0-5]\d)$/;
console.log(reg4.test('23:59')); // true
console.log(reg4.test('25:00')); // false
到此这篇关于前端基础知识之正则表达式用法的文章就介绍到这了,更多相关前端正则表达式内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
您想发表意见!!点此发布评论
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论