我已经用if else和count解决了,但是如果你有一些解决方案来检查一个单词是否包含多个字符,我真的应该知道。
我想检查给定的字符串是否必须是a,b或c。如果是aaa,ab,cc,dd,它将失败。
就像我之前说的那样,我已经有了一个解决方案,但是使用if,我想在redy中使用regexp。
感谢。
答案 0 :(得分:0)
这个只能匹配一个角色的技巧:
^[a-zA-Z]$
如果你不想匹配任何字符,只需使用:
^[a-zA-Z]?$
答案 1 :(得分:0)
def lengthGreaterThan1?(str)
if str =~ /.{2,}|^$/
return "yes"
else
return "no"
end
end
假设您正在将字符串传递给此函数而没有单词的分隔符,它将仅匹配长度为1的字符串。
请注意/^$/
匹配空字符串,字符串“a b”失败。
答案 2 :(得分:0)
要匹配'a','b'或'c',但没有别的,你可以使用这个正则表达式:
/^[abc]$/
要检查字符串是否为空或包含其他而不是单个“a”,“b”或“c”,这应该可以解决问题:
/^$|[^abc]|.{2,}/
根据您要允许的字符数量,您可能需要替换[abc]
和[^abc]
部分。例如,允许整个(小写)字母表需要以下字符类:[a-z]
,[^a-z]
。