编辑器宏和批量替换(sublime & notepad++)

sublime批量替换

  • 批量替换空行:^\n => (留空)
  • 删除全部空格将代码压缩:(?ms)\s* => (留空)
    -

当然,如果想把这些绑定到快捷键中,使用插件RegReplace吧!

下面是我自己的一些配置:

file: Packages/User/reg_replace_rules.sublime-settings :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
{
"format": "3.0",
"replacements": {
"php_ini_comma_replace": {
"find": "^;.+!?\\n",
"replace": "",
"greedy": true
},
"add_slash_for_str": {
"find": "^(.+)$",
"replace": "\"\\1\"",
"greedy": true
},
"wrap_to_comma": {
"find": "\\n",
"replace": ", ",
"greedy": true
},
"remove_comment": {
"find": "(\\s+|^|;)(//.*)$",
"replace": "",
"greedy": true
},
"remove_space_for_gzip": {
"find": "(?ms)\\s*",
"replace": "",
"greedy": true
},
"remove_space_and_tab_at_end": {
"find": "[ \t]*$",
"replace": "",
"greedy": true
},
"remove_empty_line": {
"find": "^\\n",
"replace": "",
"greedy": true
}
}
}

用户快捷键绑定:
Packages/User/Default (OSX).sublime-keymap:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
[
// ....
// php注释清除
{
"keys": ["super+ctrl+shift+p"],
"command": "reg_replace",
"args": {"replacements": ["php_ini_comma_replace", "remove_empty_line"]}
},
// js css 代码压缩
{
"keys": ["super+ctrl+shift+z"],
"command": "reg_replace",
"args": {"replacements": ["remove_comment", "remove_space_for_gzip"]}
},
// 清理末行空格 和 tab
{
"keys": ["super+ctrl+shift+d"],
"command": "reg_replace",
"args": {"replacements": ["remove_space_and_tab_at_end"]}
},
// 逗号分隔每个字符
{
"keys": ["super+ctrl+shift+m"],
"command": "reg_replace",
"args": {"replacements": ["remove_empty_line", "add_slash_for_str", "wrap_to_comma"]}
}

补充,正则中如果要排除某个字符串要这么写:^(?!912).*$