How to match any character with ruby regexp?

I am writing a method to strip out (the link tag) from input text,
and I use the gsub method to do the job:

str = “please vist <a href=”“http://www.abc.com”" title="“abc”">abc.com for more info."
str.gsub(Regexp.new("</?a(.)*?>"), “”)
=>“please vist abc.com for more info.”

It seems work well, but I’m not confident that the (.)* will safelly
match all the characters inside a tag, for example, what if there is
a new line?
So, for ruby regex, which symbol can be surely used to represent any
character of a string? Thanks.

On 27.04.2008 18:44, Nanyang Z. wrote:

I am writing a method to strip out (the link tag) from input text,
and I use the gsub method to do the job:

str = “please vist <a href=”“http://www.abc.com”" title="“abc”">abc.com for more info."
str.gsub(Regexp.new("</?a(.)*?>"), “”)
=>“please vist abc.com for more info.”

It seems work well, but I’m not confident that the (.)* will safelly
match all the characters inside a tag, for example, what if there is
a new line?

irb(main):004:0> “a\nb”.match(/.+/).to_a
=> [“a”]
irb(main):005:0> “a\nb”.match(/.+/m).to_a
=> [“a\nb”]

So, for ruby regex, which symbol can be surely used to represent any
character of a string? Thanks.

A dot.

robert

irb(main):005:0> “a\nb”.match(/.+/m).to_a
=> [“a\nb”]

Thank you for your help.

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs