在数字列表(每个都在新行上)之间插入一个逗号(',')并保留新行

insert a comma(',') between a list of numbers (each on new line) retaining new lines as well

我有一段这样的文字

123
234
345
456
567
678
789
890

我想把它转换成这个

123
,234
,345
,456
,567
,678
,789
,890

如何在 sublime text 3 中使用正则表达式替换实现此目的

我目前正在为每一行手动将 '\n' 替换为 '\n,'

编辑: 我的完整文件是这样的

xyz

123
234
345
456
567
678
789
890

abc

您可以使用

^\d+\R\K(?=\d+$)

替换为,。参见regex demo详情:

  • ^ - 行首
  • \d+ - 一位或多位数字
  • \R - 换行序列
  • \K - 丢弃到目前为止匹配的文本的匹配重置运算符
  • (?=\d+$) - 仅包含一个或多个数字的行应紧跟在当前位置的右侧。

你可以使用

^(?!\A)
  • ^ 行首
  • (?!\A) 否定先行,断言不是字符串的开头

并替换为,

Regex demo