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"

相关推荐
谙忆10248 分钟前
图像任务超时怎么重试:先分执行状态,再做结果验收
javascript
懂点Tech7 小时前
ctfshow misc28:GIF 高度修改解题与脚本实现
开发语言·windows·python
云和数据.ChenGuang7 小时前
Python 重写(Override)深度解析:从 MRO 到 super() 的完整机制
java·开发语言·人工智能·python·langchain·1024程序员节
美狐美颜SDK开放平台8 小时前
视频美颜SDK试用DEMO阶段应该测试什么?直播APP接入实操指南
开发语言·人工智能·深度学习·音视频·美颜sdk·直播美颜sdk·第三方美颜sdk
dtq04248 小时前
C++小案例 - 日志实战
开发语言·c++
星夜离尘569 小时前
MATLAB ADC 码流触顶诊断:命中数、缺口分段与削顶不可辨识性
开发语言·matlab
码匠许师傅9 小时前
【C++三方组件】Qt 概览:桌面 C++ 的事实标准与许可证三轨
开发语言·c++·qt
码匠许师傅10 小时前
【C++三方组件】POCO:跨平台系统编程全家桶
开发语言·c++
米米商聊10 小时前
同名附件为什么被 Map 覆盖?重复键与一对多索引
前端·javascript
bkspiderx11 小时前
基于Socket的广播通信及C语言实现详解
c语言·开发语言·socket·广播·socket的广播通信