Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number

Re: Wierd behaviour with HTML::Entities::decode_entities()

by ikegami (Patriarch)
on Dec 13, 2009 at 22:50 UTC ( #812623=note: print w/replies, xml ) Need Help??

in reply to Wierd behaviour with HTML::Entities::decode_entities()

  • Wow, why the switch to insane variable names? You're not even separating the words! Your code is unreadable. (Wall of text.)

  • Anyway, you always discard the result of decode_entities, so I don't see how you could claim it ever works.

  • And the order of the following statements is backwards:

    $decodedParsedContent =~ s/(\s)+/ /g; # remove double whitespace decode_entities(my $decodedParsedContentWithDecodeEntities = $decodedP +arsedContent);

    You're removing the spaces before you decode the entities that might result in spaces.

  • Finally, s/(\s)+/ /g is wrong. Except ? in some very special circumstances, applying a modifier to a capture makes no sense. Which brings to the point that you don't need to be capturing at all. If you need parens, they're (?...): s/(?:\s)+/ /g. Of course, there's one one atom in the parens, so all you need is s/\s+/ /g.

Update: "If called in void context the arguments are decoded in-place.", oops.

Your test produces waaaaay too much output, so I can't even see the problem, much less diagnose it.

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (4)
As of 2023-06-05 12:46 GMT
Find Nodes?
    Voting Booth?
    How often do you go to conferences?

    Results (24 votes). Check out past polls.