gpt4 book ai didi

javascript - 从字符串中删除前导零和尾随零

转载 作者:数据小太阳 更新时间:2023-10-29 04:26:16 25 4
gpt4 key购买 nike

我有几个这样的字符串:

str1 = "00001011100000";  // 10111
str2 = "00011101000000"; // 11101
...

我想使用正则表达式和一个操作从每个字符串中去除前导和结束零。

到目前为止,我使用了两个不同的函数,但我想将它们组合在一起:

str.replace(/^0+/,'').replace(/0+$/,'');

最佳答案

您可以使用 OR 子句 (|) 组合两个正则表达式:

var r = '00001011100000'.replace(/^0+|0+$/g, "");
//=> "10111"

更新:上述正则表达式解决方案将 0 替换为空字符串。要防止出现此问题,请使用此正则表达式:

var repl = str.replace(/^0+(\d)|(\d)0+$/gm, '$1$2');

RegEx Demo

正则表达式分解:

  • ^: 断言开始
  • 0+:匹配一个或多个零
  • (\d):后跟在捕获组 #1 中捕获的数字
  • |:或者
  • (\d):匹配捕获组 #2 中捕获的数字
  • 0+:后跟一个或多个零
  • $:断言结束

替换:

这里我们使用了两个捕获组的反向引用:

$1$2

这基本上是将数字放在前导零之后,将数字放在尾随零之前。

关于javascript - 从字符串中删除前导零和尾随零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24295121/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com