正则表达式(Regular Expressions,简称 RegEx)是一个强大的工具,用于匹配字符串中的模式。在此列举一些常用的正则表达式及其解释:
d
d:匹配一个数字,等同于 [0-9]。
d+
+:表示匹配前面的字符 1 次或多次。
d{3}
d{3,5}
[a-zA-Z]
[a-zA-Z]:匹配任何一个英文字母,不论大小写。
[a-zA-Z]+
+:表示匹配一个或多个字母。
s
s:匹配任何空白字符,包括空格、制表符、换行符等。
S
S:匹配非空白字符。
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$
^:表示开始。
$:表示结束。
[a-zA-Z0-9._%+-]:匹配用户名。
@[a-zA-Z0-9.-]+:匹配 @ 后面的域名部分。
.[a-zA-Z]{2,}:匹配 .com、.org 等顶级域名。
^https?://[a-zA-Z0-9.-]+(?:/[^s]*)?$
:匹配 http 或 https。
://:匹配 ://。
[a-zA-Z0-9.-]+:匹配域名部分。
(?:/[^s]*)?:匹配可选的路径部分。
d{4}-d{2}-d{2}
d{4}:匹配 4 位年份。
d{2}:匹配 2 位月份和日期。
^1[3-9]d{9}$
1[3-9]:以 1 开头,第二位是 3 到 9 之间的数字。
d{9}:后面跟着 9 位数字。
[ab]
[^ab]
bwordb
b:单词边界,表示匹配“word”这个完整的单词。
^([1-9]|[1-9][0-9]|100)$
([1-9]|[1-9][0-9]|100):匹配 1 到 9、10 到 99 或 100。
在一些编程语言(如 JavaScript 或 Python)中,你可以使用正则表达式进行替换操作
/ /g
/ /g:匹配所有空格并替换。
(d{3})-(d{4})
(d{3})和
(d{4})是捕获分组。
在替换时,你可以使用 1 和 2 来引用这两个分组。
g(全局搜索):查找字符串中的所有匹配项。
i(忽略大小写):进行不区分大小写的匹配。
m(多行搜索):使 ^ 和 $ 匹配行的开始和结束。
const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$/;
const email = "[email protected]";
if (emailRegex.test(email)) {
console.log("有效的邮箱地址");
} else {
console.log("无效的邮箱地址");
}
以上是一些常见的正则表达式及其应用。正则表达式非常强大,但也有其复杂性,尤其是在处理不同类型的文本时。掌握正则表达式能极大地提高咱们处理文本的效率哦!