结束时返回的结果不正确,是否为?ruby方法

结束时返回的结果不正确,是否为?ruby方法,ruby,regex,Ruby,Regex,我试图使用以下代码检查HTML img标记中的图像src extension.end_with?(/[.jpg|.gif|.png|.jpeg]/).should eq(true) 在哪里 extension=“trister_image610x450.jpg” 我也试过了 extension.end_with?(/[.]jpg|gif|png|jpeg/).should eq(true) 在这两种情况下,我都是错的。 上述代码有什么问题?您可以使用以下表格: extension.end_

我试图使用以下代码检查HTML img标记中的图像src

extension.end_with?(/[.jpg|.gif|.png|.jpeg]/).should eq(true)
在哪里 extension=“trister_image610x450.jpg”

我也试过了

 extension.end_with?(/[.]jpg|gif|png|jpeg/).should eq(true)
在这两种情况下,我都是错的。
上述代码有什么问题?

您可以使用以下表格:

extension.end_with?(".jpg",".gif",".png",".jpeg")
或者,像这样:

extensions = [".jpg",".gif",".png",".jpeg"]
if extensions.include?(extension)
  # do something here
end

我以前从未见过将此方法用于正则表达式。

第一种情况是错误的,因为您在分组时使用了错误的语法
()
,而不是
[]
。不过,我对第二种情况很好奇。似乎
end\u with?
不需要正则表达式。请检查相关文件以确认。查看此链接并查看
end\u with?
-