Current File : //proc/thread-self/root/opt/alt/ruby18/share/ri/1.8/system/String/sub-i.yaml |
--- !ruby/object:RI::MethodDescription
aliases: []
block_params:
comment:
- !ruby/struct:SM::Flow::P
body: Returns a copy of <em>str</em> with the <em>first</em> occurrence of <em>pattern</em> replaced with either <em>replacement</em> or the value of the block. The <em>pattern</em> will typically be a <tt>Regexp</tt>; if it is a <tt>String</tt> then no regular expression metacharacters will be interpreted (that is <tt>/\d/</tt> will match a digit, but <tt>'\d'</tt> will match a backslash followed by a 'd').
- !ruby/struct:SM::Flow::P
body: If the method call specifies <em>replacement</em>, special variables such as <tt>$&</tt> will not be useful, as substitution into the string occurs before the pattern match starts. However, the sequences <tt>\1</tt>, <tt>\2</tt>, etc., may be used.
- !ruby/struct:SM::Flow::P
body: In the block form, the current match string is passed in as a parameter, and variables such as <tt>$1</tt>, <tt>$2</tt>, <tt>$`</tt>, <tt>$&</tt>, and <tt>$'</tt> will be set appropriately. The value returned by the block will be substituted for the match on each call.
- !ruby/struct:SM::Flow::P
body: The result inherits any tainting in the original string or any supplied replacement string.
- !ruby/struct:SM::Flow::VERB
body: " "hello".sub(/[aeiou]/, '*') #=> "h*llo"\n "hello".sub(/([aeiou])/, '<\\1>') #=> "h<e>llo"\n "hello".sub(/./) {|s| s[0].to_s + ' ' } #=> "104 ello"\n"
full_name: String#sub
is_singleton: false
name: sub
params: |
str.sub(pattern, replacement) => new_str
str.sub(pattern) {|match| block } => new_str
visibility: public