使用正则表达式查找两个字符的特定实例

时间:2015-05-03 00:58:38

标签: ruby regex string

我不确定如何使用正则表达式解决此问题。

  

编写一个接受字符串的方法,如果字母为" z"则返回true。在" a"之后出现在三个字母内。您可以假设该字符串仅包含小写字母。

非常感谢任何见解。

3 个答案:

答案 0 :(得分:0)

def foo s
  !!(s =~ /a\w{,2}z/)
end

答案 1 :(得分:0)

基本上,您被要求匹配以下任何一种模式:

'a**z'
'a*z'
'az'

其中*是小写字母,a-z。用自然语言(ok,英语)表示为" An' a'接着是0,1或2个小写字母,后跟一个' z'。正则表达式,可以表示为

/a[a-z]{0,2}z/

我根本不是rubyist,因此可能会或可能不会对某些Ruby进行特定的调整,但这应该是它的基本要点。

答案 2 :(得分:-1)

这是我喜欢用于Ruby Regex验证的网站。 rubular.com话虽如此,如果你想在一个只有一个a之后命中0到2个空格的z,并且文本是小写的,我会使用这个正则表达式字符串。 [a] {0,2} z这个正则表达式字符串在Rubular上传递了所有三个场景,它只会打到a。