我正在学习正则表达式,因此问这个问题。我有一串
字符串时间= 7 AM-9PM;
我需要添加空格,以便字符串像这样出来
时间= 7 AM-9 PM。
到目前为止,我已经尝试了以下正则表达式
time.replaceAll(“(\ d {1})”,“ $ 1”);
它正在输出
上午9点至下午7点
现在我只需要-之前和之后的空间。有人可以建议我需要在正则表达式中添加其他内容以实现最终输出。
谢谢
最佳答案
如果尝试使用7AM-10PM
,您会发现10
会像1 0
一样被拆分:大概不是您想要的!
我设法做到了2个replaceAlls:
String time = "7AM-10PM"
System.out.println(time
.replaceAll("([0-9]+)", "$1 ") //spaces around numbers
.replaceAll("([\\-])", " $1 ")); //spaces around '-'
结果:
7 AM - 10 PM