前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >提取数字——字符串、正则面试题

提取数字——字符串、正则面试题

作者头像
HTML5学堂
发布2018-03-12 11:50:47
1K0
发布2018-03-12 11:50:47
举报
文章被收录于专栏:HTML5学堂HTML5学堂

提取数字——字符串、正则面试题

HTML5学堂:正则、数组、字符串,是JavaScript语言中让人头痛的一些知识,今天这篇文章我们使用数组字符串、正则两种方法,来实现从一个字符串中提取数字的功能,并将提出出来的数字作为一个数组返回。

提取字符串中的数组

将一个字符串中的数字提取出来,再有多个连续的数字组合为一个数组。例如:将hyoga3476H5course75,提取组合成:[3476, 5, 75]

题目剖析

字符串方法的解题思路:从字符串的第一位开始进行检测,查看是否是介于数字之间,如果是的话,则将组接字符串,当没有数字再出现的时候,将组接好的数字字符串,作为一个数组元素添加到数组当中。需要有一个地方进行处理,即如果最后一位是数字,这种情况下,需要进行再次检测。

相关知识点的使用:字符串方面,需要使用到charAt、push方法;正则方面,需要使用到match方法。

字符串方法 - 提取字符串中的数组

代码语言:javascript
复制
var str = 'hyoga3476H5course75';
var arr = [];
var substr = '';
for (var i = 0; i < str.length; i++) {
    if (str.charAt(i)>='0' && str.charAt(i)<=9) {
        substr += str.charAt(i);
    }else{
        if (substr!='') {
            arr.push(substr);
            substr = '';
        };
    }
};
// 防止最后一位为数字,而上面的for循环无法实现
if (substr!='') {
    arr.push(substr);
    substr = '';
};
console.log(arr);

正则方法 - 提取字符串中的数组

代码语言:javascript
复制
var str = 'hyoga3476H5course75';
var reg = /\d+/g;
str = str.match(reg);
console.log(str);
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2015-10-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 懂点君 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 提取数字——字符串、正则面试题
  • 提取字符串中的数组
  • 题目剖析
  • 字符串方法 - 提取字符串中的数组
  • 正则方法 - 提取字符串中的数组
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档