我是正则表达式的新手,我有一个表达式,我必须为工作而写。我正在考虑使用replaceAll()
来做这件事,但我不确定我是否可以做我建议使用一个正则表达式。
我必须将格式为"abc12378"
的字符串更改为"$$$ $$$ 78"
。我可以使用两个不同的正则表达式来解决这个问题:
- 字符串:
"abc12378"
- RegEx:
"([1-6])"
- 替换
"\$"
- 结果:
"$$$$$$78"
或者
- 字符串:
"$$$$$$78"
- RegEx:
"(.{3})"
- 替换
"$1 "
- 结果:
$$$ $$$ 78
你知道我是否可以使用一个组合的replaceAll()吗?
非常感谢任何帮助。
答案 0 :(得分:0)
此单replaceAll
次调用可以执行您想要的操作,实际上它只是用"$$$ "
替换每组3个字母数字字符:
String s = "abc12378";
System.out.println(s.replaceAll("[a-z0-9]{3}", "\\$\\$\\$ "));
<强>输出强>
$$$ $$$ 78
假设您还有一个角色,请按以下步骤操作:
String s = "123456789";
System.out.println(s.replaceAll("[a-z0-9]{3}(?!$)", "\\$\\$\\$ "));
<强>输出强>
$$$ $$$ 789