strings

strings.FindRE

返回与正则表达式匹配的字符串切片。

签名
strings.FindRE PATTERN STRING [LIMIT]
返回类型
[]string
别名
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 }}