首页 > web前端 > js教程 > 正文

怎样使用javascript正则表达式_常见匹配模式有哪些?

夜晨
发布: 2025-12-20 18:27:08
原创
163人浏览过
JavaScript正则表达式是高效处理字符串匹配、提取和替换的工具,通过模式描述目标,配合RegExp对象或字符串方法(如test、match、replace)使用;支持字面量和构造函数两种写法,常用标志有g、i、m;邮箱校验推荐/^1+@2+.3+$/,手机号用/^1[3-9]\d{9}$/,中文提取用[\u4e00-\u9fa5]{2,4},强调精准匹配优于复杂公式。\s@ ↩\s@ ↩\s@ ↩

怎样使用javascript正则表达式_常见匹配模式有哪些?

JavaScript 正则表达式是处理字符串匹配、提取和替换的高效工具。核心在于用简洁的模式描述“想要找什么”,再配合 RegExp 对象或字符串方法(如 test()match()replace())来执行操作。

基础写法与常用标志

正则表达式可写作字面量形式 /pattern/flags,也可用构造函数 new RegExp('pattern', 'flags')(动态生成时更灵活)。常用标志有:

  • g:全局匹配(不加则只匹配第一个)
  • i:忽略大小写
  • m:多行模式(让 ^$ 匹配每行起止)

邮箱地址匹配(实用但需注意边界)

简单验证可用:/^[^\s@]+@[^\s@]+\.[^\s@]+$/。它要求:开头非空格/@字符,接着一个 @,再是非空格/@字符,一个点,最后是非空格/@字符。

注意:完整邮箱规范极复杂(RFC 5322),前端只需做基础校验,后端必须二次验证。避免用过于宽松的 /.+@.+\..+/,它会误判 a@b.c.d @ . 这类无效输入。

立即学习Java免费学习笔记(深入)”;

手机号匹配(以中国大陆为例)

常见格式是 11 位数字,以 1 开头,第二位常为 3–9:/^1[3-9]\d{9}$/

小微助手
小微助手

微信推出的一款专注于提升桌面效率的助手型AI工具

小微助手 249
查看详情 小微助手

说明:

  • ^$ 锁定首尾,防止 “abc13812345678def” 被误认为合法
  • [3-9] 排除已停用号段(如 11、12)
  • \d{9} 表示后面紧跟 9 个数字

若需兼容带分隔符的输入(如 138-1234-5678),先用 .replace(/[-\s]/g, '') 清理再校验。

中文、数字、字母混合提取

比如从字符串 "订单号:ORD2024001,用户:张三,金额:¥99.5" 中提取关键信息:

  • 提取订单号:str.match(/ORD\d+/)["ORD2024001"]
  • 提取中文姓名:str.match(/[\u4e00-\u9fa5]{2,4}/)(匹配 2–4 个常用汉字)
  • 提取金额数字:str.match(/¥(\d+\.\d+)/),括号捕获小数部分,match() 返回数组,[1] 即数值

提示[\u4e00-\u9fa5] 是常用汉字范围,不能覆盖生僻字或扩展区;如需更全,可加 \u3400-\u4dbf(扩展 A)等,但多数场景够用。

基本上就这些。正则不是越长越强,而是越准越稳——明确目标、限制边界、测试边界值,比套用“万能公式”更重要。

以上就是怎样使用javascript正则表达式_常见匹配模式有哪些?的详细内容,更多请关注php中文网其它相关文章!

java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号