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);