从字符串中提取数字内容

javascript基础综合练习:从字符串中提取数字内容。已知字符串str的内容为数字、字母和特殊符号的组合。利用学习的js处理字符串的方法,将其中的数字内容以数组的形式提取出来。譬如字符串"ae33tyt99htr47"提取数字内容[33,99,47]。试试同时提取出字符串中的非数字内容吧。

<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <title></title>
  <script>
    var str = "3a66l-+-*ew32ght676gg88k47;88m6+gfu8458";
   /* 补充代码 */
  </script>
</head>
<body>
</body>
</html>

参考代码:

    var str = "3a66l-+-*ew32ght676gg88k47;88m6+gfu8458";
    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 = "";
        }
      }
    }
    console.log(arr);

采用正则则可以很简单方便的处理:

    var str = "13a66l-+-*ew32ght676gg88k47;88m6+gfu8458";
    console.log(str.match(/d+/g));

提取非数字参考代码:

    var str = "13a66l-+-*ew32ght676gg88k47;88m6+gfu8458";
    var arr = [];
    var tmp = "";
    for (var i = 0; i < str.length; i++) {
      if (parseInt(str.charAt(i)) != parseInt(str.charAt(i))) {
        tmp += str.charAt(i);
      }
      else {
        if (tmp) {
          arr.push(tmp);
          tmp = "";
        }
      }
    }
    console.log(arr);
原文地址:https://www.cnblogs.com/f6056/p/11738312.html