java - 如何将 Java 中的字符串拆分为不同大小的部分?

标签 java regex split

我有一个时间戳:200212312359 我怎样才能将它拆分为 2012.12.31.23.59

最简单的方法是 .split("(?<=\\G.{2})") , 然后组合数组的前 2 个元素,但我想知道是否有任何更专业的解决方案。

最佳答案

您可以通过单个 replaceAll 调用和有点过于复杂的正则表达式获得相同的结果。

"200212312359".replaceAll("(^\\d{4}|\\d{2})(?!$)", "$1.")

分解后,它匹配开头的 4 位数字 ^\\d{4},或匹配其他任何地方的 2 位数字 \\d{2},输入 (?!$) 末尾的否定前瞻以避免匹配最后一对。然后用与数字相连的点替换 4 或 2 位数字。

关于java - 如何将 Java 中的字符串拆分为不同大小的部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16198966/

相关文章:

python - 如何将 float 拆分并保持在一起 Ruby 和 Python

java - 从固定格式字符串中提取数字

PHP PCRE解析javascript代码

r - 使用连接值拆分数据框行

java - 验证可以包含任何字符的字符串,但不能包含特定字母表/脚本中的字母

java - DefaultBootstrap.bootstrap性能问题

Java Jackson反序列化实现接口(interface)的抽象类子类

java - 如何获取URL中的所有链接(<a href>)

Ruby 正则表达式 gsub 文本文件中的一行

regex - 替换复杂模式中的字符