分別用字符串方法和正則找出字符串中所有的數字


1、第一種方法:

用字符串的方法,遍歷字符串每一個字符,當字符的編碼介於0-9之間時將字符存在變量tmp中,否則變量追加到數組並且清空。

<script>
var str = 'haj123sdk54hask33dkhalsd879';

function findNum(str){
    
    var arr = [];
    var tmp = '';
    
    for(var i=0;i<str.length;i++){
        if( str.charAt(i)<='9' && str.charAt(i)>='0' ){
            tmp += str.charAt(i);
        }
        else{
            if(tmp){
                arr.push(tmp);
                tmp = '';
            }
        }
    }
    
  //在循環外加一個判斷,是因為當字符串遍歷到最后一位9的時候,不會走else里面的內容,無法加到數組
if(tmp){ arr.push(tmp); tmp = ''; } return arr; } alert( findNum(str) ); //[123,54,33,879] </script>

2、第二種方法:正則的match匹配。

function findNum(str){
    return str.match(/\d+/g);
}

alert( findNum(str) );   //[123,54,33,879]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM