Hugo 标签之间的正则表达式匹配
Regex match between Hugo tags
我有一个 Hugo 标签,如下所示:
{{< ref posts/filename >}}
filename 是一个变量,是我想要保留的位。
到目前为止我得到了这个:
/\{\{\< (.*?) \>\}\}\)/
这让我有:
ref posts/filename
但我不知道如何删除文件名前的其余部分
您可以匹配 >
和 /
以外的任何字符,直到 {{<
部分的第一个 /
:
\{\{<[^>\/]*\/(.*?) >\}\}
参见regex demo。
详情:
\{\{<
- {{<
子串
[^>\/]*
- >
和 /
以外的零个或多个字符
\/
- 一个 /
字符
(.*?)
- 第 1 组:除换行字符外的任何零个或多个字符,尽可能少
>\}\}
- >}}
子串。
(?<=\/)[^ ]*(?=[ >])
这给我留下了:
filename
我有一个 Hugo 标签,如下所示:
{{< ref posts/filename >}}
filename 是一个变量,是我想要保留的位。
到目前为止我得到了这个:
/\{\{\< (.*?) \>\}\}\)/
这让我有:
ref posts/filename
但我不知道如何删除文件名前的其余部分
您可以匹配 >
和 /
以外的任何字符,直到 {{<
部分的第一个 /
:
\{\{<[^>\/]*\/(.*?) >\}\}
参见regex demo。
详情:
\{\{<
-{{<
子串[^>\/]*
->
和/
以外的零个或多个字符
\/
- 一个/
字符(.*?)
- 第 1 组:除换行字符外的任何零个或多个字符,尽可能少>\}\}
->}}
子串。
(?<=\/)[^ ]*(?=[ >])
这给我留下了:
filename