我有一个时间戳:200212312359
我怎么能把它拆分成2012.12.31.23.59
简单的方法是.split("(?<=\\G.{2})"),然后结合阵列的前2个元素,但我想知道是否有任何更专业的解决方案.
您可以通过一次replaceAll调用和一些过于复杂的正则表达式获得相同的结果.
"200212312359".replaceAll("(^\\d{4}|\\d{2})(?!$)", "$1.")
Run Code Online (Sandbox Code Playgroud)
细分,它在开始时匹配4位数^\\d{4},或\\d{2}在其他任何地方匹配2位数,在输入结尾处具有负前瞻(?!$)以避免匹配最后一对.然后用一个连接到数字的点替换4或2位数.