读书人

求已清理数字间的减号正则表达式请

发布时间: 2013-08-14 14:27:55 作者: rapoo

求已清理数字间的减号,正则表达式,请高人指点,多谢!急急
求已清理数字间的减号,正则表达式

如2-3-6-6 清理后为:2366

如-2-6-8-5 清理后为:-2685
[解决办法]
分两步
alert( "-2-6-8-5-1-2".replace(/(^-\d)?((?:-\d+)+)/g,function(a,b,c){return b+ c.replace(/-/g,'')}) )
[解决办法]

引用:
分两步
alert( "-2-6-8-5-1-2".replace(/(^-\d)?((?:-\d+)+)/g,function(a,b,c){return b+ c.replace(/-/g,'')}) )
参数a,b,c如何传递的?
[解决办法]
a,b,c 对应正则中分组 0,1,2
[解决办法]
引用:
a,b,c 对应正则中分组 0,1,2
谢谢回复,这种用法在什么条件下能用,为什么很少见?

而且,如2-3-6-6 清理后为:2366这种情况貌似无法实现
[解决办法]
str.replace(/(\d)-/g,"$1");
[解决办法]
有常用,一般都写成$1,$2

alert( "2-3-6-6".replace(/(^-\d+)?((-\d+)+)/g,function(a,b,c){return (b
[解决办法]
'')+ c.replace(/-/g,'')}) )

读书人网 >JavaScript

热点推荐