zoukankan      html  css  js  c++  java
  • js字符串操作

    1.字符串转换

    <script>
      var num = 1024;
      var mystr = num.toString();
      console.log(mystr);
      // ---------------------------
      var mystr = String(num);
      console.log(mystr);
      // ---------------------------
      var mystr = "" + num;
      console.log(mystr);
    </script>
    

    2.字符串分割

    <script>
      // split()将字符串进行拆分返回一个新的数组
      // split()的第二个参数,表示返回的字符串数组的最大长度
      var mystr = "lbq,my,la,jjh";
      var str = mystr.split(",");
      console.log(str);
      var str1 = mystr.split(",", 2);
      console.log(str1);
    </script>
    

    3.字符串替换

    <script>
          var mystr = "wozaijinxingzifuchuantihuancaozuo,zifuchuantihuano";
          var str = mystr.replace("zifuchuan", "");
          console.log(str);
          var str1 = mystr.replace(/zifuchuan/g, "");
          console.log(str1);
    </script>
    

    4、获取字符串长度

    <script>
          var str = "itcast";
          var mystr = str.length;
          console.log(mystr);
    </script>
    

    5、查询子字符串

    <script>
          // indexOf() 返回字符串中一个子串第一处出现的索引(从左到右搜索)
          var str = "itcast";
          var index = str.indexOf("t");
          console.log(index);
          // lastIndexOf() 返回字符串中一个子串最后一处出现的索引(从右到左搜索)
          var index = str.lastIndexOf("t");
          console.log(index);
    </script>
    

    6、返回指定位置的字符或其字符编码值

    <script>
          // charAt()查找给定位置的字符
          var mystr = "Hello World!";
          var index = mystr.charAt(7);
          console.log(index);
          // charCodeAt()查找对应位置的字符编码值
          var charCode = mystr.charCodeAt(7);
          console.log(charCode);
    </script>
    

    7、字符串匹配,返回值为数组

    <script>
          // match()
          var mystr = "hi,mynameisguoxiansheng6,33iswho?";
          var matchStr = mystr.match("guo");
          console.log(matchStr);
          // 正则匹配
          var regexp2 = /guo/g;
          var matchStr = mystr.match(regexp2);
          console.log(matchStr);
          // search()如果查找成功,返回字符串中匹配的索引值。
          var regexp1 = /guo/;
          var matchStr = mystr.search(regexp1);
          console.log(matchStr);
    </script>
    

    8、字符串连接

    <script>
          // 加法操作进行字符串连接
          var mystr1 = "Hello";
          var mystr2 = "world!";
          var mystr3 = "li";
          var newStr = mystr1 + " " + mystr2;
          console.log(newStr);
          // concat()传递多个字符串,拼接多个字符串
          var newStr = mystr1.concat(mystr3 + mystr2);
          console.log(newStr);
    </script>
    

    9、字符串切割和提取

    <script>
          // slice()函数:
          var mystr = "hello world!";
          var mystr1 = mystr.slice(-3);
          console.log(mystr1);
          var mystr2 = mystr.slice(-3, -1);
          console.log(mystr2);
          var mystr3 = mystr.slice(3);
          console.log(mystr3);
          var mystr4 = mystr.slice(3, 7);
          console.log(mystr4);
          // substring()函数:
          var mystr = "hello world!";
          var sliceStr1 = mystr.substring(3);
          console.log(sliceStr1);
          var sliceStr2 = mystr.substring(3, 7);
          console.log(sliceStr2);
          // substr()函数:
          var mystr = "hello world!";
          var sliceStr1 = mystr.substr(3);
          console.log(sliceStr1);
          var sliceStr2 = mystr.substr(3, 7);
          console.log(sliceStr2);
    </script>
    注:
       1.slice() 可以为负数,如果起始位置为负数,则从字符串最后一位向前找对应位数并且向后取结束位置,
          如果为正整数则从前往后取起始位置到结束位置。
      2.substring()只能非负整数,截取起始结束位置同slice()函数一致。
      3.substr()与第一、第二种函数不同,从起始位置开始截取,结束位置为第二个参数截取的字符串最大长度。
       以上三种函数未填第二参数时,自动截取起始位置到字符串末尾。
    

    10、字符串大小写转换

    <script>
          var mystr = "Hello World!";
          // toLowerCase()
          var lowCaseStr = mystr.toLowerCase();
          console.log(lowCaseStr);
          // toUpperCase()
          var upCaseStr = mystr.toUpperCase();
          console.log(upCaseStr);
    </script>
    

    11、字符串去空格

    <script>
          // trim方法用来删除字符串前后的空格
          var mystr = "     hello world      ";
          var trimStr = mystr.trim();
          console.log(trimStr);
    </script>
    

    常用的字符串操作

    • 字符串去重
    <script>
    
      var str = "aahhgggsssjjj";
      function removeRepeat(msg) {
        var res = [];
        var arr = msg.split("");
        for (var i = 0; i < arr.length; i++) {
          if (res.indexOf(arr[i]) == -1) {
            res.push(arr[i]);
          }
        }
        return res.join("");
      }
      var str1 = removeRepeat(str); //ahgsj
      console.log(str1);
    
    • 判断字符串中字符出现的次数

    1.先实现字符串去重

    2.然后对去重后的数组用for循环操作,分别与原始数组中各个值进行比较,如果相等则count++,
    循环结束将count保存在sum数组中,然后将count重置为0

    3.这样一来去重后的数组中的元素在原数组中出现的次数与sum数组中的元素是一一对应的

      var str = "aacccbbeeeddd";
      var sum = [];
      var res = [];
      var count = 0;
      var arr = str.split("");
      for (var i = 0; i < arr.length; i++) {
        if (res.indexOf(arr[i]) == -1) {
          res.push(arr[i]);
        }
      }
      for (var i = 0; i < res.length; i++) {
        for (var j = 0; j < arr.length; j++) {
          if (arr[j] == res[i]) {
            count++;
          }
        }
        sum.push(count);
        count = 0;
      }
      console.log(res); //["a", "c", "b", "e", "d"]
      for (var i = 0; i < res.length; i++) {
        var str = sum[i] % 2 == 0 ? "偶数" : "奇数";
        console.log(res[i] + "出现了" + sum[i] + "次");
        console.log(res[i] + "出现了" + str + "次");
      }
    </script>
    
    博客的价值在于传播,分享,交互,欢迎大家对我的文章发表评论意见。本人持求同存异的价值观,只要意见就事论事,本人不会删除你的评论。但不能保证被博客园删除、技术处理等,对此表示无能为力。 评论区内容不限于文章内容,但需要准守博客园评论规定。
  • 相关阅读:
    内存管理3 Win32汇编语言056
    高级强制类型转换 C++快速入门37
    内存管理3 Win32汇编语言056
    密码学基础
    危险API的禁用列表
    危险API的禁用列表
    《那些年啊,那些事——一个程序员的奋斗史》——68
    《那些年啊,那些事——一个程序员的奋斗史》——68
    《那些年啊,那些事——一个程序员的奋斗史》——68
    春节期间停止更新
  • 原文地址:https://www.cnblogs.com/itcast-lbq/p/11830561.html
Copyright © 2011-2022 走看看