我有日志文件。我需要解析它。第 4 到 5 列(SETv5.CacheDB 和删除 4...)之间为“制表符”,其他情况下为空格。 如果我使用“\s+”,那么最后一列将被空格分隔。我怎样才能避免这种情况?
来自:
17.11.2014 03:00:00.832 调试:SETv5.CacheDB 删除 4 个旧折扣(11 月 15 日星期六 00:00:00 之前)
致:
"17.11.2014","03:00:00.832","DEBUG:","SETv5.CacheDB","删除 4 个旧折扣(11 月 15 日星期六 00:00:00 之前)"
最佳答案
我认为最简单的方法是使用带有限制的String.split()
,以防止模式的应用超出您的预期。
String[] columns = logString.split( "\\s+", 5 );
关于java - 多个分隔符的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61346367/