rubyのバージョンは3.1.1です。
詳しくはrubyの公式ドキュメントを見てください。
繰り返し
以下のメタ文字列は繰り返しを表現します。直前の部分式を何回繰り返すかを指定します。このような繰り返しを表すメタ文字列を量指定子(quantifier)と呼びます。
*
0回以上
+
1回以上
?
0回もしくは1回
{n}
ちょうどn回(nは数字)
{n,}
n回以上(nは数字)
{,m}
m回以下(mは数字)
{n,m}
n回以上m回以下(n,mは数字)
出典
気づき
+
は計算式の漢字のようにみてしまうとダメなんだな。
直前のものが何回繰り返すかを表現している。
条件の塊なんだな。
アンカー
アンカーは幅0の文字列にマッチするメタ文字列です。幅0とは文字と文字の間
、文字列の先頭
、文字列の末尾
、などを意味します。ある特定の条件を満たす「位置」
にマッチします。
^
行頭にマッチします。行頭とは、文字列の先頭もしくは改行の次を 意味します。
$
行末にマッチします。 行末とは文字列の末尾もしくは改行の手前を意味します。
\A
文字列の先頭にマッチします。
\Z
文字列の末尾にマッチします。 ただし文字列の最後の文字が改行ならばそれの手前にマッチします。
\z
文字列の末尾にマッチします。
\b
単語境界にマッチします。 単語を成す文字と単語を成さない文字の間にマッチします。 文字列の先頭の文字が単語成す文字であれば、文字列の先頭 の位置にマッチします。
\B
非単語境界にマッチします。 \bでマッチしない位置にマッチします。
出典
気づき
\Z
と\z
は違うのか。
いろいろあるな。