Open2

rubyでlower camelの正規表現を実現する

occhiocchi

背景

  • railsでlower camelの文字列以外は弾くバリデーションをかけたい。
occhiocchi

実現するコード

REGEX = %r{\A[a-z][a-zA-Z0-9]*\z}

解説

  1. %r{}: Rubyの正規表現リテラルです。この中にパターンが記述される。

  2. \A: 文字列の始まりを表す。

  3. [a-z]: 最初の文字が小文字の英字であることを示す。これはローワーキャメルケースの最初の単語が小文字である必要があるというルールを反映している。

  4. [a-zA-Z0-9]*: この部分は0回以上の繰り返しを意味する。つまり、このパターンには大文字・小文字の英字および数字が0回以上含まれることができる。これにより、最初の文字の後に続く任意の数の文字(大文字、小文字、数字)を許容する。

  5. \z: 文字列の終わりを表す。