eg: str = “a b c d”
newStr = str.sub(" ", ", ")
gives me output a, b c d
what i want is a, b, c, d
ow do i make this happen sub isnt doing it for me i guess. I been
looking all through the ruby-doc to no avail.
eg: str = “a b c d”
newStr = str.sub(" ", ", ")
gives me output a, b c d
what i want is a, b, c, d
ow do i make this happen sub isnt doing it for me i guess. I been
looking all through the ruby-doc to no avail.
Hi –
On Mon, 29 Sep 2008, Nick Bo wrote:
eg: str = “a b c d”
newStr = str.sub(" ", ", ")gives me output a, b c d
what i want is a, b, c, d
ow do i make this happen sub isnt doing it for me i guess. I been
looking all through the ruby-doc to no avail.
Check out String#gsub, and also Array#join.
David
try gsub instead of sub.
Jamey
perfect thanks
On Sep 28, 2008, at 9:04 PM, Nick Bo wrote:
eg: str = “a b c d”
newStr = str.sub(" ", ", ")gives me output a, b c d
what i want is a, b, c, d
ow do i make this happen sub isnt doing it for me i guess. I been
looking all through the ruby-doc to no avail.
You want to use str.gsub rather than str.sub. Compare the
documentation of the two:
------------------------------------------------------------ String#gsub
str.gsub(pattern, replacement) => new_str
str.gsub(pattern) {|match| block } => new_str
From Ruby 1.9.0
Returns a copy of _str_ with _all_ occurrences of _pattern_
replaced with either _replacement_ or the value of the block. The
_pattern_ will typically be a +Regexp+; if it is a +String+ then
no
regular expression metacharacters will be interpreted (that is
+/\d/+ will match a digit, but +‘\d’+ will match a backslash
followed by a ‘d’).
[…]
------------------------------------------------------------- String#sub
str.sub(pattern, replacement) => new_str
str.sub(pattern) {|match| block } => new_str
From Ruby 1.9.0
Returns a copy of _str_ with the _first_ occurrence of _pattern_
replaced with either _replacement_ or the value of the block. The
_pattern_ will typically be a +Regexp+; if it is a +String+ then
no
regular expression metacharacters will be interpreted (that is
+/\d/+ will match a digit, but +‘\d’+ will match a backslash
followed by a ‘d’).
[…]
Hope this helps,
Mike
–
Mike S. [email protected]
http://www.stok.ca/~mike/
The “`Stok’ disclaimers” apply.
Nick Bo wrote:
eg: str = “a b c d”
newStr = str.sub(" ", ", ")gives me output a, b c d
what i want is a, b, c, d
ow do i make this happen sub isnt doing it for me i guess. I been
looking all through the ruby-doc to no avail.
gsub
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.
Sponsor our Newsletter | Privacy Policy | Terms of Service | Remote Ruby Jobs