在java中使用regex从列分隔文件中的字段内的货币字段中删除美元符号和逗号

Tho*_*ady 6 java regex

我试图从使用string.replaceAll命令驻留在逗号分隔文件中的记录上的货币字段中删除美元符号和千位分隔符(在我的情况下为逗号)时遇到一些挑战.

删除美元符号和逗号(所有逗号)都没有问题,但是逗号字段分隔符需要保留,这就是我的挑战.我花了一点时间研究这个并且正在旋转我的车轮.

下面是读入记录类型的模式以及我希望看到的内容.

之前 - fieldA, fieldB, fieldC, $1,000.00, fieldD, FieldE

之后 - fieldA, fieldB, fieldC, 1000.00, fieldD, fieldE

或者我最好不使用正则表达式模式?

任何帮助是极大的赞赏.

anu*_*ava 3

您可以使用:

String repl = str.replaceAll("(?<=\\d),(?=\\d)|\\$", "");

//=> fieldA, fieldB, fieldC, 1000.00, fieldD, FieldE
Run Code Online (Sandbox Code Playgroud)