JS中的正则表达式

==================================================================

字符串操作:
str.search(‘’)// 查找位置
str.substring(起点,终点)// 获取的片段=起点到(终点-1)
str.chatAt(位置)//获取某个字符
str.split(‘按照这个切分’)//切分字符串整合为数组

=================================================================
正则表达式:
RegExp对象
JS风格——new RegExp(“a”,“i”)
perl风格——/a/i 加上i可以忽略大小写 i=ignore


\d:在正则表达式中代表数字
math():可以把所有匹配的东西,全部提取出来
/\d/g:加上g可以找到全部 g=global
/\d+/g:加上+相当于告诉计算机我要的数字是若干个 +是量词


var re=/a/g
replace( re替换前的元素,0替换后的元素):结果把字符串中的所有a替换为0
用于替换所有匹配,要配合正则表达式使用

百度|淘宝|谷歌:| 在正则里面也是或的意思


[ ]:元字符就是方括号
o[abc]px:只认oapx、obpx、ocpx
[0-9]、[a-z]:表示只认范围0到9 、a到z
[^a-z]:除了a到z之外都认
[^a-z0-9]:除了a到z和0到9以外都认,组合使用


.(点):在正则表达式里面代表任意字符
尽量不要用点,很容易出问题,如果你想用点说明你没有考虑清楚


例子:过滤html标签

  <script>
        window.onload=function(){
            var obtn=document.getElementById('btn1')
            var otxt1=document.getElementById('txt1')
            var otxt2=document.getElementById('txt2')

            obtn.onclick=function(){
                
                var re=/<[^<>]+>/g//表示获取<>,且它里面有若干个除了<>之外元素

                otxt2.value=otxt1.value.replace(re,' ')

            }
        }
    </script>

=================================================================

转义字符:
/d: 数字 --------> [0-9]
/w:英文、数字、下划线 --------> [a-z0-9_]
/s:空白字符

/D:除了数字 --------> [^0-9]
/W:除了英文、数字、下划线 --------> [^a-z0-9_]
/S:非空白字符

=================================================================

量词:
{n}:正好出现n次
{n,m}:最少n次,最多m次
{n,}:最少n次,最多不限

+相当于{1,}
?相当于{0,1}

电话号码:[1-9]\d{7} 第一位号码不是0

():用于分组可以配合?使用

“ * ”星号 相当于{0,} 任意次,不推荐使用

===================================================================

验证邮箱是否合法:

window.onload=function(){
            var obtn=document.getElementById('btn1')
            var otxt1=document.getElementById('txt1')
            // var otxt2=document.getElementById('txt2')

            obtn.onclick=function(){
                
                var re=/^\w+@[a-z0-9]+\.[a-z]+$/i
                //单独使用^代表字符串开头 $代表字符串结尾

               if(re.test(otxt1.value))
               //test()只要整段字符串中有一部分符合就返回true
               {
                  alert("邮箱合法")
               }
               else{
                   alert("邮箱不合法")
               }


            }
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值