在JAVA中找到REGEX(4位数和逗号)前面的逗号

时间:2017-01-23 10:21:15

标签: java regex regex-group

我正在使用Java并尝试在4位数日期前设置逗号。例如:

普通字符串:

  

' El Burro' Van Rankin,Jorge,1964年6月5日,NULL

我想要以下输出(在1964年前放置一​​个逗号):

  

' El Burro' Van Rankin,Jorge,1964年6月5日,NULL

这是我制作的正则表达式: NetDataContractSerializer //如果找到一个4位数后跟一个逗号,则用逗号替换它,然后用组1(1964,)

如果我运行这个,我得到以下输出:

  

' El Burro' Van Rankin,Jorge,6月5日,NULL

它取消了整个1964年。我做错了什么?

1 个答案:

答案 0 :(得分:1)

替换字符串中包含\1,而它应为$1。这是我能看到的唯一问题。

line.replaceAll("(\\d{4},)", ",$1")

或者如果你想要更整洁的东西,甚至可能是这样:

replaceAll("\\b\\d{4},", ",$0")