zoukankan      html  css  js  c++  java
  • 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.onload=function ()
    {
      var oTxt1=document.getElementById('txt1');
      var oTxt2=document.getElementById('txt2');
      var oBtn=document.getElementById('btn1');

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

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

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

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

      oBtn.onclick=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.onload=function ()
    {
      var oTxt1=document.getElementById('txt1');
      var oTxt2=document.getElementById('txt2');
      var oBtn=document.getElementById('btn1');

      oBtn.onclick=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));

  • 相关阅读:
    分析NGINX 健康检查和负载均衡机制
    基于ASIO的协程库orchid简介
    基于ASIO的协程与网络编程
    Boost.Asio技术文档
    Linux升级命令yum upgrade和yum update的区别
    yum和apt-get的用法和区别
    Linux-centos7设置静态IP地址
    Linux-各种姿势(lessvi等)打开各种类型的文件(txt/csv/xlsx等)出现不能打开(全乱码、部分乱码、二进制文件等)的问题
    Excel-vlookup(查找值,区域范围,列序号,0)如何固定住列序列号,这样即使区域范围变动也不受影响
    EXCEL-名称管理器
  • 原文地址:https://www.cnblogs.com/xiaoyangtian/p/7967117.html
Copyright © 2011-2022 走看看