【问题标题】:How replace last instance of space with comma如何用逗号替换最后一个空格实例
【发布时间】:2015-06-19 09:48:33
【问题描述】:

我有一个文本文件,我想用逗号替换最后一个空格,以方便数据导入和处理。

我的文本文件有以下示例行:

Some text 123 here and then 44.99
more text 789 is 33.75

我想要得到的结果:

Some text 123 here and then,44.99
more text 789 is,33.75

【问题讨论】:

  • 你有什么尝试吗?

标签: regex replace notepad++


【解决方案1】:

您可以使用以下正则表达式替换:

Find what:    \h+(\S+)$
Replace with: ,\1

请参阅regex demo

详情

  • \h+ - 1 次或更多 (+) 重复任何水平空格 (\h)
  • (\S+) - 捕获组 1:除空格以外的任何一个或多个字符 (\S)
  • $ - 一行结束。

,\1 替换用逗号和第 1 组的内容替换匹配的文本。

【讨论】:

  • 我需要知道如何将最后一个“/”替换为空。
  • @HappyBird 您能否澄清一下用任何内容替换最后一个“/” 是什么意思? /(?!.*/) -> 空字符串?
  • @HappyBird 我明白你为什么不能使用\h+(\S+)$。实际上,如果您只想在一行上替换,文本编辑器中的正则表达式 S&R 可能会变得很棘手。您可以将该模式替换为 /([^/\r\n]*)$ 并替换为 $1\1\n\r 必须保持在同一行。如果你使用/(?!.*/),你只需要确保你没有启用.匹配换行符保持在同一行。
猜你喜欢
  • 1970-01-01
  • 2012-06-02
  • 2011-06-18
  • 1970-01-01
  • 2015-01-13
  • 2016-06-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多