Affects versions: 1.7.145
Fix versions: 1.9.655
`clojure.string/replace` accepts either a string or pattern argument to match against.
For pattern arguments, the current implementation discards the original RegExp and creates a new one:
`(.replace s (js/RegExp. (.-source match) "g") replacement)`
This is killing any flags on the original pattern (case insensitivity, for example). As a result, things like `(str/replace "Foo" #"(?i)foo" "bar")` currently fail. The result is "Foo", it should be "bar".
Can I submit a patch that'll check for and preserve other (i/m/y) flags?