strings.FindRE
文法
strings.FindRE PATTERN INPUT [LIMIT]
戻り値
[]string
エイリアス
findRE
By default, findRE
finds all matches. You can limit the number of matches with an optional LIMIT argument.
正規表現を指定する際には、“解釈される” (interpreted) 文字列リテラル (ダブルクォートで囲む) ではなく、そのままの文字列リテラル (バッククォートで囲む) を用いることで、文法を簡易なものにしてください。 “解釈される” 文字列リテラルを用いる場合、バックスラッシュそのものはエスケープする必要があります。
Go 言語の正規表現パッケージでは RE2 文法 を実装しています。
RE2 文法とは、おおざっぱに言えば PCRE が許容する文法のサブセットであり、さまざまな 注意事項 があります。
なお RE2 のエスケープシーケンス \C
はサポートされません。
This example returns a slice of all second level headings (h2
elements) within the rendered .Content
:
{{ findRE `(?s)<h2.*?>.*?</h2>` .Content }}
The s
flag causes .
to match \n
as well, allowing us to find an h2
element that contains newlines.
To limit the number of matches to one:
{{ findRE `(?s)<h2.*?>.*?</h2>` .Content 1 }}