簡単そうですが、意外と色んなケースがあると思います。
TL;DR
# !ruby
# 英小文字のみでいい
str =~ /^[a-z]+$/
# 大文字も含めたい
str =~ /^[a-zA-Z]+$/
# 数字と _ も OK
str =~ /^[\w]+$/
# 空白・タブ・改行も OK
str =~ /^[\w\s]+$/
# 記号も OK
str =~ /^[0x21-0x7e\s]+$/
最後のものについて。
ASCII の印字可能文字は /^[0x20-0x7e]$/
の範囲ですが、これには [\t\n\r\v]
が含まれないので、含めたい場合はこのようにすればよいでしょう。
詳しくは ASCII コード表を参照してみてください。