如何使用Regex从vscode用户代码段中的TM_FILEPATH返回目录?
我正在寻找一种方法来创建一个用户代码段,以便从项目中获取核心目录。以下是我正在使用的示例路径:如何使用Regex从vscode用户代码段中的TM_FILEPATH返回目录?,regex,visual-studio-code,code-snippets,vscode-snippets,Regex,Visual Studio Code,Code Snippets,Vscode Snippets,我正在寻找一种方法来创建一个用户代码段,以便从项目中获取核心目录。以下是我正在使用的示例路径: C:dev/Pseudope/Unreal/cubite/Source/CubicleCore/Private 创建vscode代码段时,${TM_FILEPATH}将返回此路径,以便与正则表达式一起使用。我希望能够将这些代码段用于不同的项目,这些项目都将具有与上面的文件路径相同的结构,其中我希望应用于代码段的文本将始终嵌套在源代码和Private | Public之间。这是我到目前为止拥有的正则表达
C:dev/Pseudope/Unreal/cubite/Source/CubicleCore/Private
创建vscode代码段时,${TM_FILEPATH}
将返回此路径,以便与正则表达式一起使用。我希望能够将这些代码段用于不同的项目,这些项目都将具有与上面的文件路径相同的结构,其中我希望应用于代码段的文本将始终嵌套在源代码和Private | Public之间。这是我到目前为止拥有的正则表达式:
(?您可以使用
“UE日志(LOG${TM\u FILEPATH/*Source[\\\\\/]([^\\\/]+)[\\\\\/](?:Private | Public)。*/$1/},日志,文本(\'Hello')”
看
详情:
*
-尽可能多的零个或多个字符
Source
-Source
[\\/]
-/
或\
([^\\/]+)
-第1组($1
):除\
和/
之外的任何一个或多个字符
[\\/]
-a/
或\
字符
(?:Private | Public)
-Private
或Public
字符串
*
-尽可能多的零个或多个字符
感谢您的快速回复。我感谢您的详细解释。这不仅解决了我的问题(我已经在vscode中进行了测试),而且还提供了对正则表达式更深入的理解。谢谢!@Pseudope我应该在${TM_FILEPATH/pattern/replacement/flags}
中提到,您需要使用repalcement逻辑(您使用了一个匹配的转义反斜杠),并且您还需要使用两个转义反斜杠来形成正则表达式转义,否则,如果它们不是有效字符串转义序列的一部分,它们将被忽略。@Pseudope很高兴它对您有效。如果我的回答对您有帮助,也请注意。