今天有同學在問,如何在一個字符串中獲取所有的數字。
太簡單了,用正則表達式呀~
let zz = /\d+/g ; // 數字的正則,全局查找,需要帶後綴 g
let str = "12 abc sdf 13x asdf"; // 字符串
console.info( str.match( zz ) ); // 查找字符串中所有符合正則的內容。
// ["12","13"]
字符串的match 方法,可以根據正則表達式把所有符合要求的內容都選出來。
也可以:
let zz = /\d+/g ; // 數字的正則,全局查找,需要帶後綴 g
let str = "12leduo13"; // 字符串
let arr = [];
let num = null ;
while( num = zz.exec(str) ){
arr[ arr.length ] = num[0] ;
console.info(num[0]);
}
正則的 exec 方法可以找出對應的內容,但是一次只能找一個,找不到就返回 null,所以可以用循環去自動查找。
記錄一下~加強學習。