这是Ruby on Rails应用程序的ActiveJob /
我正在使用Anemone网络抓取工具,并在www.example.com
的主页上创建了所有URI的数组。我想过滤掉没有特定路径的那些。
因此,www.example.com/somepath
应该被选中并保存,而www.example.com/someotherpath
不应该被选中并保存。
问题是我无法过滤这些数组条目。我没有可以使用的正则表达式方法。
我在顶部要求'uri',但仍然会收到method does not exist
错误。
答案 0 :(得分:2)
使用数组的select
和字符串的include
来完成这项工作。
your_array = [ URI('www.example.com/somepath'),
URI('www.example.com/someotherpath') ]
filter = 'somepath'
your_array.select { |t| t.to_s.include?(filter) }
=> [URI("www.example.com/somepath")]
答案 1 :(得分:0)
以下正则表达式适合您。
http:\/\/example\.com\/somepath($|\/.*)
编写一个ruby代码,检查字符串是否与此正则表达式匹配,然后就完成了。
有些事情:
def right_string(string)
string.match(http:\/\/example\.com\/somepath($|\/.*)) ## this return true / false
end