我现在已经在这个 Sublime Snippet 上停留了一段时间。
我想在创建新类时显示正确的包名称,使用TM_FILEPATH
and TM_FILENAME
。
打印TM_FILEPATH
变量时,我得到如下信息:
/Users/caubry/d/[...]/src/com/[...]/folder/MyClass.as
我想转换这个输出,所以我可以得到类似的东西:
com.[...].folder
这包括:
- 删除之前的任何东西
/com/[...]/folder/MyClass.as
; - 删除 TM_FILENAME 及其扩展名;在这个例子中
MyClass.as
; - 最后找到所有的斜线并用点替换它们。
到目前为止,这就是我所拥有的:
${1:${TM_FILEPATH/.+(?:src\/)(.+)\.\w+/\l$1/}}
这显示:
com/[...]/folder/MyClass
我确实了解如何用点替换飞溅,例如:
${1:${TM_FILEPATH/\//./g/}}
但是,我很难将此逻辑添加到前一个逻辑,以及删除逻辑末尾的 TM_FILENAME 。
我对正则表达式真的很缺乏经验,在此先感谢。
:]
编辑: [...]
表示可变数量的文件夹。