【发布时间】:2021-11-06 15:47:58
【问题描述】:
我现在正在玩 Visual Studio Snippets 一段时间,想知道是否/如何使用 TM_FILENAME 从 RELATIVE_FILEPATH 获取命名空间。例如,我有:
RELATIVE_FILEPATH = src\model\RegisterModel.php
TM_FILENAME = RegisterModel.php
我想从第一个和最后一个 \ 中去掉后者,所以我最终会得到 src\model
如果我使用 RegisterModel.php 作为字符串,我可以让它工作,但如果我使用 TM_FILENAME 作为变量,则不能。这可能吗?
这是有效的:${RELATIVE_FILEPATH/(RegisterModel.php)//gi}
但我想要这样的东西:${RELATIVE_FILEPATH/(TM_FILENAME)//gi}
提前致谢!
【问题讨论】:
-
已将其添加到帖子中!
-
看来你输了
$,试试${RELATIVE_FILEPATH/${TM_FILENAME}//gi} -
我已经试过了,还是不行。可以肯定的是,这是我使用的行:
"body": "${RELATIVE_FILEPATH/${TM_FILENAME}//gi}", -
奇怪的是这行得通,但这只是去掉了 FILENAME 中也在 FILEPATH 中的一些字符:
${RELATIVE_FILEPATH/[${TM_FILENAME}]//gi},结果为:src\od\Rgsrod.php -
如果你使用 HyperSnips 扩展,你可以用 JavaScript 编写 sn-p
标签: regex visual-studio-code vscode-snippets