检查字符串是否包含 Ruby 中的特定字符序列
Check if a string contains a specific sequence of characters in Ruby
我正在尝试检查字符串是否包含特定的字符序列。
更准确地说,我需要验证我的字符串是否包含这些字符:
A00[a-zA-Z]
所以,我有一个固定部分 "A00" 后跟一个字母 [a-zA-Z]。我必须确定我的 "filename" 字符串是否包含此序列
filename -> A01k-test.rb [KO]
filename -> A00W-test.rb [OK]
我试过这个代码
if @filename !~ /A00+[a-zA-Z]+$/;
puts "OOOOOOOOOOK"
end
此代码无效,它没有正确匹配。
!~
(不匹配)与=~
(匹配)相反。您需要使用后者进行匹配。
$
是 Ruby 正则表达式中行尾或字符串结尾的锚点,根据您的 post,您不需要它。
尝试:
if @filename =~ /A00[a-zA-Z]/
puts "OOOOOOOOOOK"
end
我正在尝试检查字符串是否包含特定的字符序列。 更准确地说,我需要验证我的字符串是否包含这些字符:
A00[a-zA-Z]
所以,我有一个固定部分 "A00" 后跟一个字母 [a-zA-Z]。我必须确定我的 "filename" 字符串是否包含此序列
filename -> A01k-test.rb [KO]
filename -> A00W-test.rb [OK]
我试过这个代码
if @filename !~ /A00+[a-zA-Z]+$/;
puts "OOOOOOOOOOK"
end
此代码无效,它没有正确匹配。
!~
(不匹配)与=~
(匹配)相反。您需要使用后者进行匹配。
$
是 Ruby 正则表达式中行尾或字符串结尾的锚点,根据您的 post,您不需要它。
尝试:
if @filename =~ /A00[a-zA-Z]/
puts "OOOOOOOOOOK"
end