JavaScript,正则表达式,向字符串中包含的所有数字添加前导零

2024-01-18

这个 Perl 脚本是我想在 JavaScript 中实现的(source https://stackoverflow.com/a/2659232/1076407):

s/([0-9]+)/sprintf('%04d',$1)/ge;

明显地sprintf在 JavaScript 中不可用,但我知道您可以构建一个直接对关注的数字起作用的函数,但是在我的例子中,我有一个很长的字符串,其中可能包含多个数字来转换字符串,如下所示:abc8 23 123进入这个:abc000008 000023 000123(以6位数字为例)。

所以它要么是一些我不明白的聪明的正则表达式,要么以某种方式找到某种方法将长字符串分割成一组不同的字符串和数字,并且只对数字进行一一操作。

我真的想避免后一种方法,因为 1)速度在这种情况下是一个问题,2)在正确位置分割字符串所涉及的正则表达式似乎比在这一点上添加前导零更难。

最后,还有其他方法可以使用 JavaScript 的正则表达式来解决这个问题吗?


您可以使用正则表达式来查找数字,并将它们替换为函数中的值:

s = s.replace(/\d+/g, function(m){
  return "00000".substr(m.length - 1) + m;
});

Demo: http://jsfiddle.net/Guffa/sEUHY/ http://jsfiddle.net/Guffa/sEUHY/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JavaScript,正则表达式,向字符串中包含的所有数字添加前导零 的相关文章

  • 访问sendBeacon发送的数据

    文档表明sendBeacon通过发送其数据HTTP POST request 但在 PHP 中 POST变量似乎是一个空数组 这是我的 JavaScript 代码 navigator sendBeacon beacon log php My
  • 如何使用 jest 模拟第三方库

    我正在开发一个node js应用程序使用nestjs我有一堂课叫LoggerService如下 export class LoggerService private logger Rollbar constructor this logge
  • 使用 CryptoJS 更改密钥 [重复]

    这个问题在这里已经有答案了 我正在使用 CryptoJS 来加密和解密文本 在这里 我只是获取消息并显示加密和解密消息 我使用DES算法进行加密和解密 这是我的 HTML 文件
  • 即使我可以监视其他方法,也无法监视事件处理程序

    我想使用 Jest Jasmine Enzyme 测试 React 中的事件处理程序 MyComponent js import React from react class MyComponent extends React Compon
  • 检查 touchend 是否在拖动后出现

    我有一些代码可以更改表的类 在手机上 有时表格对于屏幕来说太宽 用户将拖动 滚动来查看内容 但是 当他们触摸并拖动表格时 每次拖动都会触发 touchend 如何测试触摸端是否是触摸拖动的结果 我尝试跟踪dragstart和dragend
  • jquery window.open 在 ajax 成功中被阻止

    尝试在我的 ajax 成功调用中打开一个新的浏览器窗口 但是 它被阻止为弹出窗口 我做了一些搜索 发现用户事件需要绑定到 window open 才能避免这种情况发生 我还找到了这个解决方案 您可以在 ajax 之前打开一个空白窗口 然后在
  • Node.js - console.log 不显示数组中的项目,而是显示 [Object]

    我在注销对象内数组的内容时遇到问题 实际的物体看起来像这样 var stuff accepted item1 item2 rejected response Foo envelope from The sender to new item1
  • 检测两个正则表达式是否可能匹配相同的字符串[重复]

    这个问题在这里已经有答案了 给定两个正则表达式 是否可以检测是否存在与它们都匹配的可能字符串 例如 给定正则表达式A and 我可以看到那个字符串 A 匹配他们两个 这是一个简单的案例 我的问题是针对更广泛的情况 给定任何两个有效的正则表达
  • HTML2canvas 和 Canvas2image,下载的屏幕截图不显示我的 HTML 图像

    我一直在开发一个 HTML 页面 我想将其转换为图像 我一直在使用 html2canvas 和 canvas2image 脚本并采用此代码http jsfiddle net 8ypxW 3 http jsfiddle net 8ypxW 3
  • 在为 RXJS 可观察量编写测试时,如何避免让调度程序通过我的业务逻辑?

    我发现使某些测试通过的唯一方法是显式地将调度程序传递给函数 为了便于说明 请考虑以下函数 function doStuff stream return stream delay 100 filter x gt x 2 0 map x gt
  • 在闪亮的数据表中为每个单元格显示工具提示或弹出窗口?

    有没有什么方法可以为 r闪亮数据表中的每个单元格获取工具提示 有很多方法可以获取悬停行或列 但我找不到一种方法来获取行和列索引并为每个单元格显示不同的悬停工具提示 任何人都可以修改以下代码吗 library shiny library DT
  • JavaScript 中数组的 HTML 数据列表值

    我有一个简单的程序 它必须从服务器上的文本文件中获取值 然后将数据列表填充为输入文本字段中的选择 为此 我想要采取的第一步是我想知道如何动态地将 JavaScript 数组用作数据列表选项 我的代码是
  • 使用 JS 合并具有相同值的相邻 HTML 表格单元格

    我已经为此苦苦挣扎了一段时间 我有一个根据一些 JSON 数据自动生成的表 该数据可能会有所不同 我想合并第一列中具有相同值的相邻单元格 例如此表中的 鱼 和 鸟 table tr td fish td td salmon td tr tr
  • Select2 下拉列表动态添加、删除和刷新项目

    这让我发疯 为什么 Select2 不能在其页面上实现清晰的方法或示例如何在 Select2 上进行简单的 CRUD 操作 我有一个 select2 从 ajax 调用获取数据
  • 如果数字小于 10,则显示前导零 [重复]

    这个问题在这里已经有答案了 可能的重复 JavaScript 相当于 printf string format https stackoverflow com questions 610406 javascript equivalent t
  • 如何在 Google 地图 V3 中创建编号地图标记?

    我正在制作一张上面有多个标记的地图 这些标记使用自定义图标 但我还想在顶部添加数字 我已经了解了如何使用旧版本的 API 来实现这一点 我怎样才能在V3中做到这一点 注意 当您将鼠标悬停在标记上时 标题 属性会创建一个工具提示 但我希望即使
  • 如何在 javascript 正则表达式中匹配平衡分隔符?

    我原以为这个问题是不可能的 据我所知 Javascript 的正则表达式既没有递归插值 也没有漂亮的 NET 平衡组功能 但问题就在那里 如问题 12 所示正则表达式 alf nu http regex alf nu 匹配平衡对 lt an
  • 需要有关 React Js 的帮助

    我是 React Js 新手 我的代码无法正常工作 请看下面 这是我的脚本文件Main jsx 该文件由 React 编译 输出放置在 dist 文件夹下的 main js 文件中 var react require react react
  • 在 Javascript 中减少/分组数组

    基于this https stackoverflow com a 40774906 3254598例如 我想以稍微不同的方式按对象进行分组 结果应该如下 key audi items make audi model r8 year 2012
  • 用于 C# XNA 的 Javascript(或类似)游戏脚本

    最近我准备用 XNA C 开发另一个游戏 上次我在 XNA C 中开发游戏时 遇到了必须向游戏中添加地图和可自定义数据的问题 每次我想添加新内容或更改游戏角色的某些值或其他内容时 我都必须重建整个游戏或其他内容 这可能需要相当长的时间 有没

随机推荐

  • 如何删除 QML 对象

    我正在尝试删除 QML 对象并重新创建对象 如下所示 Rectangle property var obj signal videoStopped variant complete function recreate url if obj
  • 当有多个快捷方式(NSUserActivity)时,siri 快捷按钮(INUIAddVoiceShortcutButton)显示错误的标题

    我的应用程序中有 2 个 Siri 快捷方式 我使用 NSUserActivity 来捐赠这些快捷方式 我还在我的 info plist 中创建了 2 个 NSUserActivityType 有 2 个视图控制器处理这些快捷方式 1 个视
  • IText 像 pdftotext -layout 一样读取 PDF?

    我正在寻找实现 java 解决方案的最简单方法 该解决方案与以下输出类似 pdftotext layout FILE 在 Linux 机器上 当然价格也应该便宜 我刚刚尝试了 IText PDFBox 和 PDFTextStream 的一些
  • 如何将图像或图标附加到谷歌折线图的边缘

    我想要折线图如下所示 或者只是图像序列图是可能的 like this 有什么可能的方法来实现这一目标吗 use the getChartLayoutInterface method https developers google com c
  • 将 Vcl::Controls::TCaption 又名 (System::UnicodeString) 转换为 const char *

    我目前正在使用 C Builder 创建一个将文本复制到用户剪贴板的应用程序 我已经放置了一个TMemo控制 我想将其包含在const char 变量如下面的代码所示 const char output TMemo1 gt Text 当我编
  • AWS创建POST策略base64编码+签名

    我正在尝试生成一个带有 PHP 签名的 AWS POST 策略 该策略将发送到客户端以允许通过 javascript AJAX 在浏览器中上传 我已将示例复制到http docs aws amazon com AmazonS3 latest
  • 我如何开始函数式编程? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 随着函数式编程的大肆宣传 对于 C 程序员 函数式编程入门的最佳资源是什么 我并不是在寻找 C 3 0
  • UITableView:通过拖放将单元格移动到另一个位置

    我有一张包含 3 个部分的表格 第一部分 第二部分和第三部分 我想实现一种机制来通过拖放来更改单元格的位置 在同一部分内或从一个部分到另一个部分 示例1 在第一部分中 我有两行 sec1 row1 和 sec1 row2 在第二节中 我通过
  • 错误:toString 失败 Node.js 缓冲区

    有时我对 api 的 get 请求失败并显示此错误消息 顺便说一句 我使用请求模块来触发我的请求 Error toString failed buffer js 378 throw new Error toString failed Err
  • 使用 ES 模块运行 pm2

    我如何将pm2与基于ES模块 类型 模块 的包结合使用 我研究了类似的问题 没有任何有用的帮助 有人说它在 Windows 上不起作用 但我正在使用 Linux 我总是收到错误 Error ERR REQUIRE ESM require o
  • 在 python 中检索 .ttf 字体文件中所有字形的边界框和贝塞尔曲线数据

    我有兴趣提取给定 ttf 文件中所有字形的二次贝塞尔曲线信息 目前 使用 python 中的 ttfquery 库 我能够提取给定字形的轮廓 例如a 按以下方式 from ttfquery import describe from ttfq
  • 如何检查Android GPS是否被禁用[重复]

    这个问题在这里已经有答案了 我有两个文件 MainActivity java 和 HomeFragment java MainActivity 中调用 HomeFragment 中的一个函数 要求用户打开手机上的位置服务 问题是 即使用户已
  • 运行时 AOP 与编译时 AOP

    这两种AOP框架的优缺点是什么 我使用Unity作为我的aop框架 但我猜像postsharp这样的编译时aop框架可能比运行时aop框架有更好的性能 看起来运行时aop框架使用反射来实现注入 我不是 NET 人员 但我了解 Java 生态
  • Yarn add 引发错误 缺少要添加到项目中的包列表

    重新安装 Kubuntu 18 后 我尝试运行我的 vue cli 4 0 5 vuex 3 应用程序 并收到错误 错误缺少要添加到项目中的包列表 serge AtHome mnt work sdb8 wwwroot lar VApps v
  • 在 Xcode 7.2 中使用 PDF 作为图标图像

    我正在尝试在我正在开发的应用程序中使用 PDF 文件作为图标 我遇到的问题是色调颜色不一致 如果我从界面生成器设置按钮图像 则会显示图标图像black在运行时 每次 无论我尝试从界面生成器中设置什么 我尝试通过代码设置按钮图标图像而不是显示
  • Jenkins - 负载统计图奇怪的编码

    我在最新的 Jenkins 上有这个 但图例显示的是奇怪的字符而不是英语 有人知道这可能是什么吗 编码 即使使用其他显示图表的插件也是如此 我在 CentOS Linux 版本 7 4 1708 核心 Jenkins 2 73 1 apac
  • 在球拍中使用 stop-when

    我一直在搞这个程序 它需要一个数字并加 1 我想知道你到底如何使用stop when这里 例如 让它停在 5 点 我想这里需要一个 cond 声明 谢谢 require 2htdp image require 2htdp universe
  • Pandas:添加缺失月份的数据

    我有一个按月划分的客户销售信息数据框 看起来像这样 有多个客户和不同的月份和支出 customer id month year sales 0 12 2012 05 2 58 1 12 2011 07 33 14 2 12 2011 11
  • C#:将基类转换为子类

    我有一个类 NetworkClient 作为基类 using System IO using System Net Sockets using System Threading Tasks namespace Network using S
  • JavaScript,正则表达式,向字符串中包含的所有数字添加前导零

    这个 Perl 脚本是我想在 JavaScript 中实现的 source https stackoverflow com a 2659232 1076407 s 0 9 sprintf 04d 1 ge 明显地sprintf在 JavaS