正则表达式

这篇博客深入探讨了正则表达式的基础知识,包括常用的元字符,如点号(.)、星号(*)、问号(?)等特殊符号的用法,以及限定符如+、*、?、{n,m}的含义。同时,还详细解释了修饰符如i、g、m如何影响匹配规则。对于前端开发者来说,理解这些概念对于提升文本处理能力至关重要。" 109258323,7417975,感知机反向传播公式推导及解决不可导问题,"['深度学习', '神经网络', '优化算法', '激活函数', '机器学习']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

常用表达式

表达式描述
[a-z]查找任何从小写 a 到小写 z 的字符
[A-Z]查找任何从大写 A 到大写 Z 的字符
[0-9]查找任何从 0 至 9 的数字
[abc]查找括号内的任意一个字符
[^abc]查找除了括号内的任意字符

常用的元字符(特殊字符)

字符描述
\w匹配数字、字母、下划线
\W匹配非数字、字母、下划线
\d匹配数字
\D匹配非数字
\s匹配空白字符(空格、换行)
\S匹配非空白字符
\n匹配换行符

常用的限定符

字符描述
*匹配前面的子表达式零次或多次
+匹配前面的子表达式一次或多次
?匹配前面的子表达式零次或一次
{n}匹配确定的 n 次
{n,}至少匹配 n 次
{n,m}最少匹配 n 次且最多匹配 m 次

常用的修饰符

修饰符描述
i执行对大小写不敏感的匹配。
g执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。
m执行多行匹配。

其他

修饰符描述
^以...开始
$以...结束
以下是一些简单示例
//匹配电话号码
var str1 = /^[1]\d{10}$/;
//测试正则表达式
var testStr1 = "13037290702";
var testStr2 = "1303729070"
if(str1.test(testStr1)){
    console.log("手机号1匹配成功!")
}else{
    console.log("手机号1匹配失败!")
}
if(str1.test(testStr2)){
    console.log("手机号2匹配成功!")
}else{
    console.log("手机号2匹配失败!")
}

//检验性别(男或女)
var str2 = /^(man|woman)$/i;//判断性别并执行对大小写不敏感
var testStr3 = "man";
var testStr4 = "neutral";
if(str2.test(testStr3)){
    console.log("性别1匹配成功!")
}else{
    console.log("性别1匹配失败!")
}
if(str2.test(testStr4)){
    console.log("性别2匹配成功!")
}else{
    console.log("性别2匹配失败!")
}

//检验邮箱
var str3 = /^[a-zA-Z0-9\._+]{5,16}@\w+\.(com|net|cn)$/;
var testStr5 = "2769695382@qq.com";
var testStr6 = "123";
if(str3.test(testStr5)){
    console.log("邮箱1匹配成功!");
}else{
    console.log("邮箱2匹配失败!");
}
if(str3.test(testStr6)){
    console.log("邮箱1匹配成功!");
}else{
    console.log("邮箱2匹配失败!");
}

//验证生日
var str4 = /^[2-9][0-9]{3}[1-12]{2}[1-31]{2}$/;
var test1 = "20021211";
var test2 = "19991212";
if(str4.test(test1)){
    console.log("生日1匹配成功!");
}else{
    console.log("生日1匹配失败!");
}
if(str4.test(test2)){
    console.log("生日2匹配成功!");
}else{
    console.log("生日2匹配失败!");
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值