Textmate / Regex:从文件的开头/结尾删除空格

时间:2010-03-09 21:26:03

标签: regex textmate

我正在尝试向Textmate添加一个宏/命令以进行一些文件清理,而我还没想到的最后一个花絮就是从文件的开头和结尾删除空行 - 有没有人知道怎么做做这个?我知道一些Textmate或正则表达技巧必须存在,只是不确定是什么......

3 个答案:

答案 0 :(得分:5)

对于您提到的任务,您可以使用“Text”Bundle中的内置命令。

即使您只是想自己编写脚本,我建议您将这些作为模板用于您自己的工作。

要访问这些:

删除尾随空格:

  • ctrl-cmd -t 调出上下文相关的Bundle菜单<​​/ p>

  • 开始输入“删除尾随”, 在你完成“删除”之前,你 应该看到“删除尾随 空间“命令移动到顶部 菜单(此命令在 “Text”Bundle,Bundles之一 包含在TextMate中

  • “enter”将执行该命令 (假设光标定位 正确等等。)

或者,您可以使用等效的键访问此命令,但由于未在默认的TextMate安装中分配,因此您需要自己分配,这很简单:

  • ctrl-alt-cmd-b 调出来 捆绑编辑器

  • 找到Text Bundle然后点击 “删除尾随空格”命令

  • 在右上方 编辑,切换“设置”并输入 要么是关键的等价物,要么是“标签” 触发“(由...激活) 输入一些关键组合你 分配后跟Tab键。

删除前导空格:

这是一个宏而不是一个命令。通过预先配置的密钥等效项来访问它可能是最简单的, cmd-del

答案 1 :(得分:2)

此正则表达式将删除文件开头的空格

查找^[\r\n\t ]+并替换为(无)。

这个将删除末尾的空白

查找[\r\n\t ]+$并替换为(无)。

我从未使用过Textmate正则表达式。您可以使用\s(空白)类而不是[\r\n\t ]。此外,如果有多线模式,您可能需要打开多线模式。

答案 2 :(得分:1)

匹配使用以下regEx

^[ ]+|[ ]+$

并用空刺(“”)替换它