(?

正規表現とは

正規表現で特定できるものは、文字と位置の2つである。
タイトルにある正規表現は先読みと後読みを組み合わせたものである。
このような位置の特定はsplitなどのメソッドで使用することができる。
例えば、「abcdefg」という文字列があった場合、以下の結果はどうなるだろうか?
"abcdefg".split("(?<=\G..)(?=.)")
この結果は、
2文字ずつ区切った「ab cd ef gh」である。
なぜこうなるかを文章で表すと、
「前方に任意の2文字があり、かつ後方に任意の1文字がある位置に関して、照合位置を更新しながら検索する」
ということである。
言葉にしても意味不明なので、正規表現チェッカーなどで試してみることをオススメする。

以下に正規表現を調べる上で参考にしたwebページのリンクを記載する。