Project

General

Profile

Bug #11793

Updated by burnson (William Burnson) over 3 years ago

Test case:
~~~
puts 'ab'.gsub('a', '\\+')
~~~
'\\\+')

Expected output:
~~~
\+b
~~~
\\+b

Actual output:
~~~
b
~~~


The way I understand gsub(pattern, replacement) when used with two string arguments is that it will perform a literal replacement, so it is quite unexpected that substituting with \+ removes the pattern entirely.

Doc: http://ruby-doc.org/core-2.2.3/String.html#method-i-gsub

Back