Issue #11014 has been reported by Janko Marohni.

----------------------------------------
Bug #11014: String#partition doesn't return correct result on zero-width match
https://bugs.ruby-lang.org/issues/11014

* Author: Janko Marohni
* Status: Open
* Priority: Normal
* Assignee: 
* ruby -v: ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-darwin14]
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN
----------------------------------------
First, to see how String#match works on my example:

~~~
match = "foo".match(/^=*/)
match.pre_match  #=> ""
match[0]         #=> ""
match.post_match #=> "foo"
~~~

Now, if I used String#partition instead of match, I'd expect to get `["", "", "foo"]` (pre_match, match, post_match). However

~~~
"foo".partition(/^=*/) #=> ["foo", "", ""]
~~~

String#rpartition returns the correct result (with the same regex).



-- 
https://bugs.ruby-lang.org/