【问题标题】:Replacing a space between 2 numbers(not text) with a comma用逗号替换 2 个数字(不是文本)之间的空格
【发布时间】:2015-02-06 11:50:50
【问题描述】:

有一个文本文件进来进行清理,我需要用逗号替换“空格”,前提是它位于两个数字之间。

1130 11/23/14
UP AIR TEMP 122.81 LO AIR TEMP 117.75 SOURCE TEMP 102.76 RCVR TEMP 113.03

1130,11/23/14
UP AIR TEMP,122.81,LO AIR TEMP,117.75,SOURCE TEMP,102.76,RCVR TEMP,113.03

注意字母之间的空格不会被替换。

我正在使用

line = line.replaceAll(" {2,}", ",");

要去掉所有大于 1 的空格,只是不知道怎么做日期。

【问题讨论】:

  • 你的意思是before 2 个号码?
  • 看起来您的示例还替换了字母和数字之间的空格,即。 TEMP,122 ...这是你的意图吗?
  • 我的意思是任何时候有 2 个数字由空格分隔。我唯一需要影响的是日期线,我可以得到第二条

标签: java regex text replace


【解决方案1】:

正则表达式

编辑:(根据 cmets)

从你的代码示例中你需要这个:

line = line.replaceAll("(?<=\\d) +(?=\\d)", ",");

即用逗号替换 1 个或多个空格只有在它前面和后面跟着一个数字时

【讨论】:

  • 谢谢一堆阿努巴瓦!!
猜你喜欢
  • 1970-01-01
  • 2014-10-31
  • 1970-01-01
  • 1970-01-01
  • 2020-02-20
  • 1970-01-01
  • 2022-11-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多