前端常用正则表达式知识

定界符—— / /

常用的两种风格

JS风格正则
let re=new RegExp('\\d+,'g'');

perl风格正则
let re=/\d+/g;

常用三个函数(search、match、replace)
search—— 匹配字符并返回位置

<script>
    let str='weqesdfaerq';

    //alert(str.indexOf('a'));

    let re=/a/;		//字符串中是否有a
    alert(str.search(re));	//结果返回 6
</script>

match——匹配字符并返回字符

<script>
    let str='f34rrfsdf 45tsdgsrdg 5terg56456fdghdr675 dsf3434535645645645674567';
    let re=/\d+/g;	//   \d 数字(转义)      \d+ 多个数字

    alert(str.match(re));	//返回34,45,5,56456,675,3434535645645645674567
</script>

replace——匹配字符并替换对应的字符

<script>
    let str='asdfde we fsadfas weAr efAf';

    alert(str.replace(/a/gi, '*'));	//将所有的a和A替换成*
</script>

test——正则方法(用正则对象去校验,返回布尔值)
tips:**默认部分通过校验则成功,需要注意,可添加修饰符限制匹配

let re=/^[1-9]\d{4,11}$/;	//匹配1-9开头后面以4个或者11个数字结尾的字符
let str="asdasdasd";
re.test(str);	//返回flase

三大选项
i //忽略大小写
g //全局匹配,全部返回

转义
\——转义
\d 数字——相当于【0-9】
\s 空格
\w 字符——相当于【a-z0-9】
. ——任何字符
/a . {5,7}/——匹配a后面接着五个任何字符

\D 非数字——相当于【^0-9】
\S 非空格
\W非字符——相当于【^a-z0-9】

元字符
1、任何一个
/ a[abc]q/ 匹配abq或aaq或acq(只要不出现量词,都是匹配一个)

2、范围
/ [a-z] /i 匹配a-z或者A-Z任何一个
/ [0-9] / 匹配0-9数字
/ [a-z0-9]/ 匹配a-z 0-9

3、排除
[^a-z0-9] 排除a-z 0-9

量词——数量(如果不加量词,就是只匹配一个)
{ n } n个字符
/a{6}/ ——匹配六个a
/1\d{10}/——匹配1开头,后面接着是10个数字
{n,m}——n-m个字符
/\d{5,10}/——匹配五个数字或者十个数字
{n,}——最少n个字符
/\d{5,}/——最少十个数字
+ 一个或多个——相当于 {1,}

修饰符(开头、结尾)
^——行首、以什么开头
$——行尾、以什么结尾
?——
/^https?/——匹配http或者https开头

特殊注意的是
|——或
()——括号优先级

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值