2015-04-04 157 views
1

我用正则表达式的当前神秘世界的挣扎,因为我是一个菜鸟到这个领域:/正则表达式前后查找逗号4位数字

我试图找到在一个字符串,它是代替逗号之前或4位数经过这么

,2004, 
,2005, 

起始一个字符串中只有后一个逗号..

2005, 

我需要做的就是用一个换行符替换这些。任何指针将非常感激地收到。这是在JS

+0

还有没有其他的逗号,其他字符等?是不是有一个原因,你不能只用逗号替换逗号而不寻找4个数字? – adeneo 2015-04-04 08:37:58

+0

嗨,是的,它是一个长字符串的一部分,有“年”的信息,所以这里有逗号的句子int。 – user821902 2015-04-04 08:52:07

+0

我已经设法在数字之前使用逗号:'var res = string.replace(/,(?= \ d {4})/ g,“
”);'在我挣扎后的那些与:/ – user821902 2015-04-04 08:57:00

回答

0
,?(\d{4}),? 

猜这样应该$1。看到演示来better.Replace正在做。

https://regex101.com/r/sJ9gM7/47

var re = /,?(\d{4}),?/gi; 
var str = 'a,2004,\n,2005,\n\nThe starting one in the string only has a comma after it..\n\n2005,'; 
var subst = '$1'; 

var result = str.replace(re, subst); 
+1

谢谢你对我的帮助很大:) – user821902 2015-04-04 09:24:58

相关问题