Lio*_*rom 7 javascript regex string jquery
我有几个这样的字符串:
str1 = "00001011100000"; // 10111
str2 = "00011101000000"; // 11101
...
Run Code Online (Sandbox Code Playgroud)
我想使用带有一次操作的正则表达式从每个字符串中去除前导和结束零.
到目前为止,我使用了两种不同的功能,但我想将它们组合在一起:
str.replace(/^0+/,'').replace(/0+$/,'');
Run Code Online (Sandbox Code Playgroud)
anu*_*ava 18
您可以使用OR
子句(|
)组合两个正则表达式:
var r = '00001011100000'.replace(/^0+|0+$/g, "");
//=> "10111"
Run Code Online (Sandbox Code Playgroud)
更新:上面的正则表达式解决方案替换0
为空字符串.要防止出现此问题,请使用此正则表达式:
var repl = str.replace(/^0+(\d)|(\d)0+$/gm, '$1$2');
Run Code Online (Sandbox Code Playgroud)
RegEx分手:
^
:断言开始0+
:匹配一个或多个零(\d)
:跟随在捕获组#1中捕获的数字|
: 要么(\d)
:匹配捕获组#2中捕获的数字0+
:后面跟着一个或多个零 $
:断言结束替换:
这里我们使用两个捕获组的反向引用:
$1$2
Run Code Online (Sandbox Code Playgroud)
这基本上在前导零和数字之后放置数字,然后在替换中尾随零.
归档时间: |
|
查看次数: |
12019 次 |
最近记录: |