[DOC] Tweaks for String#insert

This commit is contained in:
BurdetteLamar 2025-08-21 17:36:09 -05:00 committed by Peter Zhu
parent 823d55a827
commit 6fbe2dd36e
2 changed files with 18 additions and 12 deletions

16
doc/string/insert.rdoc Normal file
View File

@ -0,0 +1,16 @@
Inserts the given +other_string+ into +self+; returns +self+.
If the given +index+ is non-negative, inserts +other_string+ at offset +index+:
'foo'.insert(0, 'bar') # => "barfoo"
'foo'.insert(1, 'bar') # => "fbaroo"
'foo'.insert(3, 'bar') # => "foobar"
'тест'.insert(2, 'bar') # => "теbarст" # Characters, not bytes.
'こんにちは'.insert(2, 'bar') # => "こんbarにちは"
If the +index+ is negative, counts backward from the end of +self+
and inserts +other_string+ _after_ the offset:
'foo'.insert(-2, 'bar') # => "fobaro"
Related: see {Modifying}[rdoc-ref:String@Modifying].

View File

@ -6056,19 +6056,9 @@ rb_str_aset_m(int argc, VALUE *argv, VALUE str)
/*
* call-seq:
* insert(index, other_string) -> self
* insert(offset, other_string) -> self
*
* Inserts the given +other_string+ into +self+; returns +self+.
*
* If the Integer +index+ is positive, inserts +other_string+ at offset +index+:
*
* 'foo'.insert(1, 'bar') # => "fbaroo"
*
* If the Integer +index+ is negative, counts backward from the end of +self+
* and inserts +other_string+ at offset <tt>index+1</tt>
* (that is, _after_ <tt>self[index]</tt>):
*
* 'foo'.insert(-2, 'bar') # => "fobaro"
* :include: doc/string/insert.rdoc
*
*/