如何使用webmock正则表达式匹配器?

时间:2012-12-08 02:35:00

标签: ruby regex rspec webmock

如何匹配以下网址:

http://www.example.com/foo/:id/bar
http://www.example.com/foo/1/bar
http://www.example.com/foo/999/bar

stub_request(:post,“www.example.com”)

3 个答案:

答案 0 :(得分:24)

您可以在Ruby中使用%r{}代替//作为正则表达式,以避免必须转义URL中的正斜杠。例如:

stub_request(:post, %r{\Ahttp://www.example.com/foo/\d+/bar\z})

答案 1 :(得分:17)

stub_request的第二个参数必须是正则表达式,而不是字符串。

stub_request(:post, /http:\/\/www.example.com\/foo\/\d+\/bar/)

答案 2 :(得分:12)

http://www\..*?\.com/foo/\d+/bar应该适合你。