Хотя многие другие ответы показывают лучшее выражение, ответ таков: /foo|bar/
будет соответствовать либо foo
, либо bar
, а то, что вы написали, было /http:|.../
, следовательно, все URL будут совпадать.
См. Ответ @ giraff о том, как вы могли написать чередование, чтобы выполнить то, что вы ожидаете, или ответы @ M42 или @ Koraktor для лучшего регулярного выражения.
И как опубликовано вкомментарии, обратите внимание, что вы можете написать литерал регулярного выражения как %r{...}
вместо /.../
, что хорошо, если вы хотите использовать /
символы в вашем регулярном выражении, не экранируя их.