1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/doc/string/scrub.rdoc

26 lines
684 B
Text
Raw Normal View History

Returns a copy of +self+ with each invalid byte sequence replaced
by the given +replacement_string+.
With no block given and no argument, replaces each invalid sequence
with the default replacement string
(<tt>"<22>"</tt> for a Unicode encoding, <tt>'?'</tt> otherwise):
s = "foo\x81\x81bar"
s.scrub # => "foo<6F><6F>bar"
With no block given and argument +replacement_string+ given,
replaces each invalid sequence with that string:
"foo\x81\x81bar".scrub('xyzzy') # => "fooxyzzyxyzzybar"
With a block given, replaces each invalid sequence with the value
of the block:
"foo\x81\x81bar".scrub {|bytes| p bytes; 'XYZZY' }
# => "fooXYZZYXYZZYbar"
Output:
"\x81"
"\x81"