74

我正在尝试使用 sublime 的文本搜索和替换函数和正则表达式来匹配每行中的一串数字,并在每行中附加一个逗号。所以这里是示例文件:

 273794103
 418892296
 134582886
 380758661
 109829186
 248050497
 2167935715
 374858669

我希望这是:

 273794103,
 418892296,
 134582886,
 380758661,
 109829186,
 248050497,
 2167935715,
 374858669,

我尝试这样做(\d+)\n并替换它,$1,但这不起作用。知道为什么吗?对于那些不喜欢 sublime 而是喜欢正则表达式的人来说,仅供参考,Sublime Text 使用 Python 的正则表达式引擎。

4

10 回答 10

212

将逗号添加到任何行

  1. 选择要修改的行

  2. CTRL + SHIFT + L

  3. RIGHT_ARROW

  4. COMMA

使用 ctrl + shift + L 可以修改所有选定的行。非常便利 :-)

于 2013-12-27T23:31:09.177 回答
105

我会推荐这个

'Find What' : $// 匹配所有行尾
'Replace With' : ,// 用逗号替换所有行尾

这适用于任何文件:-)

于 2013-11-03T06:51:47.403 回答
15

以下是您在 Mac 上的操作方式:

Command+ shift+ L> Right Arrow>逗号


Windows/Linux

Ctrl+ Shift+ L> Right Arrow>逗号

于 2017-10-02T07:07:07.090 回答
5

替换.+$0,为我工作

于 2013-11-03T06:47:18.763 回答
4

对于窗口用户:

  1. 选择所有行或选择部分行 => Ctrl+A。

  2. 将光标移至每行的最后一行 => Ctrl+Shift+L

  3. 添加将反映到所有行的逗号(,)。

** 如果要在每行的开头添加逗号(,),在第 2 步之后按 => Home(键盘上的按钮,所有光标都将指向行首)

最后 Ctrl+s 保存更改。

干杯

于 2019-01-02T07:09:28.617 回答
3

您也可以使用 ST 中的多光标来执行此操作。突出显示该区域,转到Selection -> Split into Lines(有一个键绑定,但它是特定于平台的。它将列在菜单条目旁边),按右键,然后插入逗号。

于 2013-11-03T07:38:25.017 回答
1

我在mac中的eclipse中尝试过它对我来说很好。

Find: '(.)$'
Replace with: '$1");'

我的情况我必须添加'");' 在行尾。您可以根据需要更换。

于 2016-07-23T08:02:47.140 回答
0

我尝试这样做(\d+)\n并用$1 替换它,但这不起作用。知道为什么吗?

单行搜索在 停止\n,因此它不能成为正则表达式的一部分。相反,请尝试使用行尾说明符$

s/(\d+)$/$1,/
于 2013-11-03T09:03:57.273 回答
0

Ctrl+H是打开查找内容并替换为面板的命令。

于 2018-06-03T12:40:14.943 回答
-1

我可以使用下一个宏:

[
{
    "args": null,
    "command": "split_selection_into_lines"
},
{
    "args":
    {
        "by": "characters",
        "forward": true
    },
    "command": "move"
},
{
    "args":
    {
        "characters": ","
    },
    "command": "insert"
},
{
    "args":
    {
        "extend": false,
        "to": "eof"
    },
    "command": "move_to"
}
]

保存在 comma.sublime-macro 并编辑Key Bindings - User

{ "keys":["super+,"],"command":"run_macro_file","args":{"file":"Packages/user/comma.sublime-macro"} },

PD:您需要 previum 选择您的行以添加逗号。

于 2016-08-05T02:53:30.607 回答