zoukankan      html  css  js  c++  java
  • javascript 字符串与正则

    序:就是简单记录下正则的一些基础,还有cookie的一些设置获取删除

    #字符串操作
    search 查找
    substring 获取子字符串 str.substring(start,stop)
    charAt 获取某个字符串
    split 分割字符串,获得数组

    var str="adsddd";
    var str1="ad-sd-dd-12-56";
    console.log(str.search('b'));//正常返回位置,没有找到返回-1
    console.log(str.substring(0,3));//不包含最后的位置
    console.log(str.charAt(1))//得到索引的值
    console.log(str1.split("-"));//字符串分割成数组
    

      

    #是否使用正则处理

    var str="12 ff 10 fdfddf3354 122 -=-=-124fg";
    //从上面找出所有的数字

    //如果不用正则,需要for循环 charAt查找

    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='';
                }
            }
        }
    

      

    //正则处理

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

      


    #正则 (规则表达式)

    RegExp对象
    js风格-----new RegExp("a","i")//第一个参数字符串,第二个参数
    perl风格--------/d/i //里面的规则

    /i //不区分大小写
    /g //全局寻找
    ^ //匹配输入字行首
    + //若干,多少都可以(一次或多次)
    ? //可有可无
    d //数组
    w //英文 数字 下划线
    s // 空白字符 空格 tab
    D //[^0-9]
    W //[^a-z0-9_]
    {n} //正好出现n次
    {n,m} //最少n次,最多m次
    [^] //出现方括号代表排除

    d{9} //9个数字


    固话正则
    010-89564665
    89456545

    (0d{2,3}-)?[1-9]d{7}

    邮箱验证
    dsdd@163.com
    /^w+@[0-9a-z]+.[a-z]+$/i

    match 所有符合规则的提取出来,返回数组
    search 找到符合规则的索引值
    test //符合规则返回true

    var str3='sd asdva saasd';
    var re=/a/g;
    //替换str3里的a
    console.log(str3.replace(re,'00'));

    敏感词过滤
    //过滤北京,淘宝,豆瓣
    var re=/北京|淘宝|豆瓣/g;
    strmim1=strmim2.replace(re,'*')


    元字符(方括号)
    [apc]px //apc就是或

    //范围
    [0-9] //0-9
    //排除
    [^a-z] //排除字母

    去除html标签
    //过滤html标签
    var re=/<[^<>]+>/g;
    strmim1=strmim2.replace(re,'*')

    cookie
    什么是cookie
    比如自动登录,记住用户名
    cookie特性
    同一个网站所有页面共享一套cookie
    数量、大小有限(4-10k)
    过期时间
    js中使用cookie
    document.cookie

    cookie设置

     //设置cookie
            function setCookie(cname, cvalue, exdays) {
                 var d = new Date();
                 d.setTime(d.getTime() + (exdays*24*60*60*1000));
                 var expires = "expires="+d.toUTCString();
                 document.cookie = cname + "=" + cvalue + "; " + expires;
            }
            //获取cookie
            function getCookie(cname) {
                 var name = cname + "=";
                 var ca = document.cookie.split(';');
                 for(var i=0; i<ca.length; i++) {
                      var c = ca[i];
                      while (c.charAt(0)==' ') c = c.substring(1);
                      if (c.indexOf(name) != -1) return c.substring(name.length, c.length);
                 }
                   return "";
            }
            //清除cookie 
            function clearCookie(name) { 
                setCookie(name, "", -1); 
            } 
            function checkCookie() {
                 var user = getCookie("username");
                 if (user != "") {
                    alert("Welcome again " + user);
                 } else {
                    user = prompt("Please enter your name:", "");
                    if (user != "" && user != null) {
                        setCookie("username", user, 365);
                    }
                 }
            }
            checkCookie(); 
    

    Stick to the code and become the code God.

      

  • 相关阅读:
    AKKA学习(二) 未完
    AKKA学习(一)
    seata项目结构
    seata demo
    FESCAR
    GTS原理、架构
    Fescar使用(资料)
    高性能异步分布式事务TCC框架(资料汇总)
    TIDB学习资料
    自旋锁
  • 原文地址:https://www.cnblogs.com/zwp06/p/9218139.html
Copyright © 2011-2022 走看看