strings.FindRE
返回与正则表达式匹配的字符串切片。
默认情况下,findRE 会找出所有匹配项。可以用可选的 LIMIT 参数限制匹配数量。
指定正则表达式时,请使用原始的字符串字面量(反引号),而不要使用解释型字符串字面量(双引号),以简化语法:使用解释型字符串字面量时必须转义反斜杠。
Go 的正则表达式包实现的是 RE2 语法。大致来说,RE2 语法是 PCRE 所接受语法的一个子集,并且有若干注意事项。注意,不支持 RE2 的 \C 转义序列。
下面的例子返回渲染后的 .Content 中所有二级标题(h2 元素)组成的切片:
{{ findRE `(?s)<h2.*?>.*?</h2>` .Content }}s 标志让 . 也能匹配 \n,因此可以找出包含换行的 h2 元素。
把匹配数量限制为一个:
{{ findRE `(?s)<h2.*?>.*?</h2>` .Content 1 }}