うめすこんぶ

日々のプログラミングで残しておきたいメモ.何かの役に立てれば幸いです.

rubyの正規表現を使って文字列の場合分け

スポンサーリンク

正規表現を勉強しています。簡単ですが、pythonisdigitメソッドみたいに、 文字列が英単語であるか?であったり、数字か?などを判定する関数を作ってみました。

# 頭文字が大文字、ほかは小文字の単語
def capitalize?(s)
  (s =~ /^[A-Z][a-z]*$/) == 0
end

# 全て小文字
def downcase?(s)
  (s =~ /^[a-z]+$/) == 0
end

# 全て大文字
def upcase?(s)
  (s =~ /^[A-Z]+$/) == 0
end

# 全て数字
def number?(s)
  (s =~ /^\d+$/) == 0
end

# 全てアルファベット
def alphabet?(s)
  (s =~ /^[A-Za-z]+$/) == 0
end

# 全てアルファベットか数字
def alnum?(s)
  (s =~ /^[A-Za-z0-9]+$/) == 0
end