半角と全角が反対なのでは?
あるいは、unless ではなく if では?
def check(value)
# 半角のみのチェック
if value =~ /^[ -~。-゚]*$/
puts "「#{value}」は半角のみです。"
end
# 全角のみのチェック
if value =~ /^[^ -~。-゚]*$/
puts "「#{value}」は全角のみです。"
end
end
%w(abc あいう abcあいう).each do |value|
check(value)
end
を実行すると、
「abc」は半角のみです。
「あいう」は全角のみです。
になります。
こんばんは。
御指摘のとおりです。文脈上unlessですね。全角であることをチェックするのは面倒なので「半角でなかったら全角とみなす」です。