Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot

Re: How to remove HTML tags from text

by pelagic (Priest)
on Feb 04, 2005 at 11:48 UTC ( #428019=note: print w/replies, xml ) Need Help??

in reply to How to remove HTML tags from text

One (of many) possibilities is to remove whatever there is between "<" and ">" no matter whether it's really HTML. This could be achieved easily with Text::Balanced's "extract_bracketed".


Replies are listed 'Best First'.
Re^2: How to remove HTML tags from text
by nejcPirc (Acolyte) on Feb 04, 2005 at 11:54 UTC
    Something like this?
    $data=~s/<.*?>//g; $data=~s/&lt.*?&gt//g;
      Text::Balanced does it properly even if there is some funny stuff between the brackets. Look into the documentation for more info. But of course you can also use some regex to remove the strings in a simple way.

      $data = <<_END_; <script language="JavaScript"> alert("Boo!") </script > _END_
      A /s modifier would help a little, but doesn't solve everything. Eg, what about this tag?
      $data = qq{ <img src="hello.jpg" alt="x>y" width="60" height="60" /> } +;

      Lesson: never treat HTML parsing as a "back of an envelope" exercise :)

      cLive ;-)

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://428019]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (4)
As of 2023-03-21 17:37 GMT
Find Nodes?
    Voting Booth?
    Which type of climate do you prefer to live in?

    Results (60 votes). Check out past polls.