【学习 JavaScript】 JavaScript 教程 JavaScript 简介 JavaScript 用法 JavaScript Chrome 中运行 JavaScript 输出 JavaScript 语法 JavaScript 语句 JavaScript 注释 JavaScript 变量 JavaScript 数据类型 JavaScript 对象 JavaScript 函数 JavaScript 作用域 JavaScript 事件 JavaScript 字符串 JavaScript 字符串模板 JavaScript 运算符 JavaScript 比较 JavaScript 条件语句 JavaScript switch 语句 JavaScript for 循环 JavaScript while 循环 JavaScript break 和 continue 语句 JavaScript typeof JavaScript 类型转换 JavaScript 正则表达式 JavaScript 错误 JavaScript 调试 JavaScript 变量提升 JavaScript 严格模式 JavaScript 使用误区 JavaScript 表单 JavaScript 表单验证 JavaScript 验证 API JavaScript 保留关键字 JavaScript this JavaScript let 和 const JavaScript JSON JavaScript void JavaScript 异步编程 JavaScript Promise JavaScript 代码规范 JS 函数 JavaScript 函数定义 JavaScript 函数参数 JavaScript 函数调用 JavaScript 闭包 JS 类 JavaScript 类 JavaScript 类继承 JavaScript 静态方法 JS HTML DOM DOM 简介 DOM HTML DOM CSS DOM 事件 DOM EventListener DOM 元素 HTMLCollection 对象 NodeList 对象 JS 高级教程 JavaScript prototype JavaScript Number 对象 JavaScript String JavaScript Date(日期) JavaScript Array(数组) JavaScript Boolean(布尔) JavaScript Math(算数) JavaScript RegExp 对象 JS 浏览器BOM JavaScript Window JavaScript Window Screen JavaScript Window Location JavaScript Window History JavaScript Navigator JavaScript 弹窗 JavaScript 计时事件 JavaScript Cookie JS 库 JavaScript 库 JavaScript 测试 jQuery JavaScript 测试 Prototype JS 实例 JavaScript 实例 JavaScript 对象实例 JavaScript 浏览器对象实例 JavaScript HTML DOM 实例 JavaScript 总结 JS 参考手册

JavaScript 正则表达式学习笔记

什么是正则表达式

正则表达式是一种用于匹配字符串的模式,可以用来验证字符串的格式、提取字符串中的信息等。在JavaScript中,可以使用RegExp对象来创建和操作正则表达式。

正则表达式语法

正则表达式由字符和特殊字符组成,其中一些字符有特殊的含义,表示一定的模式或者匹配规则。以下是一些常用的特殊字符:

  • .: 匹配任意单个字符
  • *: 匹配前面的字符零次或多次
  • +: 匹配前面的字符一次或多次
  • ?: 匹配前面的字符零次或一次
  • ^: 匹配字符串的开头
  • $: 匹配字符串的结尾
  • []: 匹配方括号内任意单个字符
  • |: 表示“或”关系,匹配左右两个表达式中的任意一个
  • (): 分组匹配,可以对子表达式进行分组,并且可以在之后通过编号引用

除了上述特殊字符外,还有一些转义字符,可以用来匹配一些特殊的字符:

  • \d: 匹配数字字符
  • \w: 匹配数字、字母及下划线字符
  • \s: 匹配空格及制表符等空白字符
  • \b: 匹配单词的边界

正则表达式实例

匹配手机号码

javascriptCopy Code
const reg = /^1[3-9]\d{9}$/; const phoneNum = '13812345678'; console.log(reg.test(phoneNum));

输出为true,说明该手机号码符合规则。

提取字符串中的数字

javascriptCopy Code
const reg = /\d+/g; const str = 'abc123def456'; console.log(str.match(reg));

输出为["123", "456"],表示该字符串中包含的数字有123和456。

从URL中提取文件名

javascriptCopy Code
const reg = /\/([^\/]+)$/; const url = 'http://www.example.com/path/to/file.html'; console.log(reg.exec(url)[1]);

输出为file.html,表示从该URL中提取出了文件名。

总结

正则表达式是JavaScript中非常重要的一部分,掌握正则表达式可以帮助我们更加方便地处理字符串。上述仅是正则表达式的基础内容,还有很多高级用法需要进一步学习和掌握。