JavaScript-正则

一、正则

  规则、模式

  强大的字符串匹配工具

  RegExp()对象

 

二、

  replace:替换所有匹配

  split:把字符串切割成数组

  substring:得到字符串的范围

  charAt:根据下标得到字符串

  search() :用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。

  

  *********第一个正则  

  var re=/a/i;
  var str='abcdef';

  alert(str.search(re));

  

  *********过滤HTML标签

<textarea id="txt1" rows="10" cols="40"></textarea><br>
<input id="btn1" type="button" value="转换" /><br>
<textarea id="txt2" rows="10" cols="40"></textarea>

 

window.οnlοad=function ()
{
  var oTxt1=document.getElementById('txt1');
  var oTxt2=document.getElementById('txt2');
  var oBtn=document.getElementById('btn1');

  oBtn.οnclick=function ()
  {
    var re=/<[^<>]+>/g;
    oTxt2.value=oTxt1.value.replace(re, '');
  };
};

 

  *********邮箱效验

<input type="text" id="txt1" />
<input type="button" value="校验" id="btn1" />

window.οnlοad=function ()
{
  var oTxt=document.getElementById('txt1');
  var oBtn=document.getElementById('btn1');

  oBtn.οnclick=function ()
  {
    var re=/^\w+@[a-z0-9]+\.[a-z]+$/i;
    if(re.test(oTxt.value))
    {
      alert('合法的邮箱');
    }
    else
    {
      alert('你丫写错了');
    }
  };
};

 

  *********敏感词过滤

<textarea id="txt1" rows="10" cols="40"></textarea><br>
<input id="btn1" type="button" value="过滤" /><br>
<textarea id="txt2" rows="10" cols="40"></textarea>

 

window.οnlοad=function ()
{
  var oTxt1=document.getElementById('txt1');
  var oTxt2=document.getElementById('txt2');
  var oBtn=document.getElementById('btn1');

  oBtn.οnclick=function ()
  {
    var re=/北京|百度|淘宝/g;
    oTxt2.value=oTxt1.value.replace(re, '***');
  };
};

 

  !!!找出所有数字

  

var str='12 fff 87 er334 233 -=-=fa80';
var arr=[];
var tmp='';

for(var i=0;i<str.length;i++)
{
  if(str.charAt(i)>='0' && str.charAt(i)<='9')
  {
    tmp+=str.charAt(i);
  }
  else
  {
    if(tmp)
    {
      arr.push(tmp);
      tmp='';
    }
  }
}

if(tmp)
{
  arr.push(tmp);
  tmp='';
}

alert(arr);

 

用正则写

var str='12 fff 87 er334 233 -=-=fa80';

alert(str.match(/\d+/g));

转载于:https://www.cnblogs.com/xiaoyangtian/p/7967117.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值