4

http://www.example.com/books?_pop=mheader

什么是正则表达式来匹配这个和任何在 URL 中具有“书籍”作为模式匹配之一的 URL?该站点有一个书籍类别和该类别下的各种其他子类别。如何向下遍历以搜索 book 的所有 URL?

require 'anemone'
Pattern = %r[(\/books)*]
Anemone.crawl("http://www.example.com/") do |anemone|
  anemone.on_pages_like(Pattern) do |page|
    puts page.url
  end
end
4

2 回答 2

3

http://rubular.com/是测试 Ruby 正则表达式的有用工具。

正则表达式很简单,/http:\/\/.+(books)/. 它也匹配http://以帮助确保它是一个 url。这是针对http://www.example.com/reference-books-2300的rubular 测试

于 2012-09-07T05:19:51.163 回答
1

在您的 url 中匹配 /books 的模式应该只是“/books”

这是一个测试您的正则表达式的好网站http://regexpal.com以确保您至少拥有正确的那部分代码。

于 2012-09-07T05:23:14.237 回答