strings.FindRE
預設情況下,findRE
會找到所有匹配項。您可以使用可選的 LIMIT
引數來限制匹配的數量。
在指定正則表達式時,請使用原始的 string literal(反引號),而非解釋過的字串字面量(雙引號),以簡化語法。使用解釋過的字串字面量時,您必須對反斜線進行轉義。
Go 的正則表達式套件實現了 [RE2 語法]。RE2 語法是接受的 PCRE 語法的一個子集,粗略來說,並且有各種 caveats。請注意,RE2 不支援 \C
轉義序列。
此範例返回 .Content
中所有第二層標題 (h2
元素) 的切片:
{{ findRE `(?s)<h2.*?>.*?</h2>` .Content }}
s
標誌允許 .
同時匹配 \n
,因此可以找到包含換行符的 h2
元素。
若要將匹配數量限制為一個:
{{ findRE `(?s)<h2.*?>.*?</h2>` .Content 1 }}