Split with the matched part when the separator matches the empty
part at the beginning.  [Bug #11014]
This commit is contained in:
Nobuyoshi Nakada 2020-01-16 15:36:38 +09:00
Родитель 0b6682dc57
Коммит fce54a5404
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4BC7D6DF58D8DF60
2 изменённых файлов: 2 добавлений и 1 удалений

Просмотреть файл

@ -9795,7 +9795,6 @@ rb_str_partition(VALUE str, VALUE sep)
return rb_ary_new3(3, rb_str_dup(str), str_new_empty(str), str_new_empty(str));
}
sep = rb_str_subpat(str, sep, INT2FIX(0));
if (pos == 0 && RSTRING_LEN(sep) == 0) goto failed;
}
else {
pos = rb_str_index(str, sep, 0);

Просмотреть файл

@ -2567,6 +2567,8 @@ CODE
hello = "hello"
hello.partition("hi").map(&:upcase!)
assert_equal("hello", hello, bug)
assert_equal(["", "", "foo"], "foo".partition(/^=*/))
end
def test_rpartition