javascript——正则表达式

本文详细介绍正则表达式的创建及使用方法,包括常见模式如重复、位置匹配、字符集等,并提供电子邮件与手机号码验证实例。

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

正则表达式(RegExp对象):主要用于表单验证

1、创建正则表达式:

(1)、var ret = /pattern/; pattern是内容,可以是正则表达式的内容,可以是字符或是其他的内容

(2)、var rag = new RegExp("pattern");括号内可以是双引号或者单引号

2、正则表达式的exec方法:

reg.exec(str);  ,reg为创建的正则表达式,str为要执行正则表达式的目标字符串

如:var reg = /test/; //此处如果是e,则输出e,如果是so,则输出为null

var str = "testString";

var result = reg.exec(str);

alert(result);//输出test,当没有与正则表达式相匹配的内容时,输出null

3、c{n}:c表示字母,n表示个数

如:c{1}表示匹配一个c

c{2}表示匹配两个连续的c

4、c{m,n}:匹配m到n个c,m小于等于n

如:c{3,4}:匹配连续的3个或4个c。如果多于4个,仍然只匹配4个

5、c{n,}:表示最少有n个c,最多则不限个数

6、* 表示0次或多次,c*等同于c{0}

7、 +表示1次或多次,c+等同于c{1,}

8、 ?表示0次或1次,c?等同于c{0,1}

3~8的正则表达式都是贪心模式,只要在合法的情况下,会尽量多的匹配字符

非贪心模式:正则尽量少地匹配字符,在数字的符号后面,组成的形式如:{n,}? , *? , +? , ?? ,  {m,n}?

9、^表示只能匹配字符串的开头

10、 $表示只能匹配字符串的结尾

11、‘.’匹配字符串中除了换行符\n之外的所有字符

12、“ | ”正则表达式中的或,二选一,如b|c表示,匹配b或c

13、字符集合[abc]表示a或者b或者c的任意一个字符

[a-z]:小写字母;[A-Z]大写字母;[0-9]数字

14、不区分大小写:reg = /b|c$/i,即在正则表达式后面加一个i

15、反字符串:p^在正则表达式开始部分的时候表示开头的意思,例如/^c/表示开头是c;但是在字符集合中,它表示的是类似“非“的意思,例如[^abc]就表示不能是a,b或者c中的任何一个。

[^0-9]表示非数字,[^a-z]表示非小写字母,一次类推 …
16、\d表示数字的意思,相反,\D表示非数字
17、\w表示单词字符,等同于字符集合[a-zA-Z0-9_]。 
p\W表示非单词字符,等效于[^a-zA-Z0-9_]
18、对电子邮件的验证:
    var myreg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;
19、对于手机号码的验证(提供了两种方法)
var mobile=/^((13[0-9]{1})|159|153)+\d{8}$/;
var mobile1=/^(13+\d{9})|(159+\d{8})|(153+\d{8})$/;




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值