正規表現で、『同じ文字』を表現したい
aaaaa@nyamucoro.com
この、@より前がすべて同じ文字なのを検証したい
加えて、同じ文字だった文字の部分だけ取りたい。
この場合、 aaaaa
の部分
\1でかっこの値を判定でも用いる
preg_match('/^(.)\1+@/', $value, $matches);
これだと、 aaaaa@
って文字が入る
かっこを付け足す
preg_match('/^((.)\2+)@/', $value, $matches);
((.)\2+)
のかっこの部分で aaaaa
の部分を取得出来る
外側のかっこが最初に出現したので、内側のかっこの値がずれたので、 \1は\2に変わっています。