http://www.perlmonks.org?node_id=375433


in reply to Golf: Fix de facto HTML comments

51 characters, though I'm sure there's a golf trick that could drive that down further.

# 345678 1 2345678 2 2345678 3 2345678 4 2345678 5 s/<!--(.+?)-->/(my$x=$1)=~s#--#-¬#g;"<!--$x-->"/seg

Hm... Looks like a nearly identical approach to blockhead's first approach. (Evil minds think alike.) Here's a tweak that takes it to 53 characters.

# 345678 1 2345678 2 2345678 3 2345678 4 2345678 5 23 s/<!--(.+?)-->/(my$x=$1)=~s#--#-¬#g;"<!-- $x -->"/seg

Changed once more (to 49), since I was a doofus and didn't read tye's instructions carefully enough. I think this one loses points for changing too much, but wins for making the comments legal both ways.

# 345678 1 2345678 2 2345678 3 2345678 4 2345678 s/<!--(.+?)-->/(my$x=$1)=~s#-#¬#g;"<!--$x-->"/seg

Replies are listed 'Best First'.
Re^2: Golf: Fix de facto HTML comments
by Chady (Priest) on Jul 19, 2004 at 07:33 UTC

    I was thinking along the same lines too, but I had a different approach to it, which saved me three characters.

    46 (but changes too much)

    He who asks will be a fool for five minutes, but he who doesn't ask will remain a fool for life.

    Chady | http://chady.net/
Re^2: Golf: Fix de facto HTML comments
by eyepopslikeamosquito (Archbishop) on Jul 19, 2004 at 09:59 UTC

    Simple changes give 43. I was a little worried about regex engine reentrancy, but seems to work ok,

    # 345678 1 2345678 2 2345678 3 2345678 4 2345678 s/<!--(.+?)-->/$_=$1;y#-#¬#;"<!--$_-->"/seg