From: "Hanmac (Hans Mackowiak)" Date: 2012-09-21T14:00:49+09:00 Subject: [ruby-core:47628] [ruby-trunk - Bug #7042][Open] String#=~ is not equal to Regexp#=~ Issue #7042 has been reported by Hanmac (Hans Mackowiak). ---------------------------------------- Bug #7042: String#=~ is not equal to Regexp#=~ https://bugs.ruby-lang.org/issues/7042 Author: Hanmac (Hans Mackowiak) Status: Open Priority: Normal Assignee: Category: Target version: ruby -v: ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux] i found out that string =~ regexp is not equal to regexp =~ string when you use named captures: "6:15 PM" =~ /(?\d+):(?\d+) (?A|P)M/; p hour,minute,pm # works not /(?\d+):(?\d+) (?A|P)M/ =~ "6:15 AM"; p hour,minute,pm # works i wonder why is that so ? -- http://bugs.ruby-lang.org/