js 字符串 只显示数字

1. 使用正则表达式的match方法

  • 原理 :正则表达式\d+用于匹配一个或多个数字。match方法会在字符串中查找与正则表达式匹配的部分,并返回一个包含所有匹配结果的数组。

  • 示例代码

    let str = "abc123def456";
    let numbers = str.match(/\d+/g);
    console.log(numbers);
    // 输出: ["123", "456"]

2. 使用replace方法结合正则表达式和函数

  • 原理replace方法可以用指定的内容替换字符串中与正则表达式匹配的部分。通过传入一个函数作为替换参数,可以在函数中提取匹配的数字并返回。

  • 示例代码

    let str = "abc123def456";
    let result = "";
    str.replace(/\d+/g, function(match) {
    result += match;
    return "";
    });
    console.log(result);
    // 输出: "123456"

3. 使用split方法结合正则表达式

  • 原理:先使用正则表达式将字符串分割成数组,然后过滤掉非数字的元素,最后将数字元素合并成一个字符串。

  • 示例代码

    let str = "abc123def456";
    let parts = str.split(/\D+/);
    let numbers = parts.filter(Boolean).join("");
    console.log(numbers);
    // 输出: "123456"

4. 遍历字符串逐个判断字符是否为数字

  • 原理 :通过遍历字符串的每个字符,使用isNaN函数判断字符是否为数字,如果是数字则将其添加到结果字符串中。

  • 示例代码

    let str = "abc123def456";
    let result = "";
    for (let i = 0; i < str.length; i++) {
    if (!isNaN(str[i])) {
    result += str[i];
    }
    }
    console.log(result);
    // 输出: "123456"

相关推荐
charlie11451419134 分钟前
深入理解Qt的SetWindowsFlags函数
开发语言·c++·qt·原理分析
likeGhee1 小时前
python缓存装饰器实现方案
开发语言·python·缓存
whoarethenext1 小时前
使用 C++/Faiss 加速海量 MFCC 特征的相似性搜索
开发语言·c++·faiss
项目題供诗1 小时前
黑马python(二十五)
开发语言·python
Mintopia2 小时前
四叉树:二维空间的 “智能分区管理员”
前端·javascript·计算机图形学
慌糖2 小时前
RabbitMQ:消息队列的轻量级王者
开发语言·javascript·ecmascript
Mintopia2 小时前
Three.js 深度冲突:当像素在 Z 轴上玩起 "挤地铁" 游戏
前端·javascript·three.js
MrSkye2 小时前
🔥JavaScript 入门必知:代码如何运行、变量提升与 let/const🔥
前端·javascript·面试
爱学习的茄子2 小时前
深入理解JavaScript闭包:从入门到精通的实战指南
前端·javascript·面试
醇醛酸醚酮酯2 小时前
Qt项目锻炼——TODO清单(二)
开发语言·数据库·qt