正则表达式(Regular Expressions)是处理字符串的强大工具,但确实需要一些记忆和练习才能掌握。以下是一些帮助你记忆 JavaScript 正则表达式的方法和常用模式:
1. 基础结构记忆法
记住正则表达式的基本结构:
-
/pattern/flags- 斜杠包围模式,后面可跟标志-
例如:
/hello/gi- 匹配 "hello",全局且不区分大小写
-
2. 常用元字符记忆口诀
"点星加问,花括号量"
-
.匹配任意单个字符(除换行符) -
*匹配前一项 0 次或多次 -
+匹配前一项 1 次或多次 -
?匹配前一项 0 次或 1 次 -
{n}匹配前一项恰好 n 次 -
{n,}匹配前项至少 n 次 -
{n,m}匹配前项 n 到 m 次
3. 字符类记忆法
"方括号选,横杠范围"
-
[abc]匹配 a、b 或 c -
[a-z]匹配 a 到 z 任意小写字母 -
[A-Z]匹配 A 到 Z 任意大写字母 -
[0-9]匹配任意数字 -
[^abc]匹配不是 a、b 或 c 的字符
4. 预定义字符类
"数字、非数、空白、非白、字、非字"
-
\d数字 ≡[0-9] -
\D非数字 ≡[^0-9] -
\s空白字符(空格、制表符等) -
\S非空白字符 -
\w单词字符(字母、数字、下划线)≡[A-Za-z0-9_] -
\W非单词字符
5. 锚点记忆法
"头尾界,单词边"
-
^字符串开头 -
$字符串结尾 -
\b单词边界 -
\B非单词边界
6. 分组和引用
"括号分组,竖线或"
-
(abc)捕获分组 -
(?:abc)非捕获分组 -
a|b匹配 a 或 b
7. 常用标志
"全局、忽略、多行"
-
g全局匹配(查找所有匹配而非在第一个匹配后停止) -
i不区分大小写 -
m多行模式(^和$匹配每行的开头和结尾)
8. 实用记忆技巧
-
分类记忆:将正则表达式分为匹配单个字符、匹配位置、匹配数量三类
-
联想记忆:
-
\d想到 "digit"(数字) -
\s想到 "space"(空格) -
\w想到 "word"(单词字符)
-
-
实践记忆:通过实际项目练习使用正则表达式
-
制作速查表:创建自己的正则表达式备忘单
9. 常用正则表达式示例
| 用途 | 正则表达式 |
|---|---|
| 邮箱 | /^[^\s@]+@[^\s@]+\.[^\s@]+$/ |
| 手机号 | /^1[3-9]\d{9}$/ |
| 身份证 | /^\d{17}[\dXx]$/ |
| URL | /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/ |
| 中文 | /[\u4e00-\u9fa5]/ |
记住正则表达式的关键是理解+实践。开始时可以参考备忘单,随着使用次数的增加,常用的模式会自然记住。遇到复杂需求时,可以分解问题,逐步构建正则表达式。