检查字符串是否包含Ruby中的特定字符序列

时间:2015-03-10 14:07:51

标签: ruby string compare

我正在尝试检查字符串是否包含特定的字符序列。 更准确地说,我需要验证我的字符串是否包含以下字符:

A00[a-zA-Z]

所以,我有一个固定的部分“A00”后跟一个字母[a-zA-Z]。我必须确定我的“文件名”字符串是否包含此序列

filename -> A01k-test.rb   [KO]
filename -> A00W-test.rb   [OK]

我尝试使用此代码

if @filename !~ /A00+[a-zA-Z]+$/;
    puts "OOOOOOOOOOK"
end

此代码无效,但无法正确匹配。

1 个答案:

答案 0 :(得分:3)

!~(不匹配)是=~(匹配)的倒数。您需要使用后者进行匹配。

$是Ruby正则表达式中行尾或字符串结尾的锚点,根据你的帖子你不需要它。

尝试:

if @filename =~ /A00[a-zA-Z]/
  puts "OOOOOOOOOOK"
end
相关问题