Problems? Is your data what you think it is? PerlMonks

The Power Of Regular Expression

by liz (Monsignor)
 on Oct 01, 2003 at 23:16 UTC Need Help??

```%_=(62,20,38,1,35,50,33,2,60,10,37,5);s:#*>*<*%*!*&*
*:\$;=30;\$;+=\$_{+ord}for split'',\$&;chr\$;:eg for\$_=q:
>>!!#><%&&>>>>%>><<<<%&!#<%!#><>>><<&#<<<!&&&&#<<!&&
>>>%%&>><<%%%%&&&&!>><#>&>>><<!!>>>%%%&&&!><<<<<&&&&
>><<%!>><%%%&&&&#>%&&>>><&>>>>&&&&:;print;{{{[()]}}}

Replies are listed 'Best First'.
Re: The Power Of Regular Expression
by idsfa (Vicar) on Oct 02, 2003 at 03:16 UTC

s///eg and the hash table disguised as an array, plus basic bamboozling with difficult characters. In a more transparent form ...

```
%_=(62 => 20,
38 => 1,
35 => 50,
33 => 2,
60 => 10,
37 => 5);

#  Match each chunk of optional characters in a specific order
#  Look up the ASCII values of each char in the chunk in the hash
#  Add the hash values plus a starting value of 30
#  Replace the chunk with the character whose ASCII you just added up

# (Pattern modified to add \s* so that chunks could be
#  formatted prettily)

s:#*>*<*%*!*&*\n*\s*:
\$;=30;  \$;+=\$_{+ord}  for split'',\$&;  chr\$;  :eg

for

\$_=q:>>!!
#><%&&
>>>>%
>><<<<%&
!
#<%!
#><
>>><<&
#<<<!&&&&
#<<!&&
>>>%%&
>><<%%%%&&&&
!
>><
#>&
>>><<!!
>>>%%%&&&
!
><<<<<&&&&
>><<%!
>><%%%&&&&
#>%&&
>>><&
>>>>&&&&:;
print;

PS Did you get the idea for hiding the newline from your critique of my JAPH?

Remember, when you stare long into the abyss, you could have been home eating ice cream.

Create A New User
Node Status?
node history
Node Type: obfuscated [id://295780]
help
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (7)
As of 2017-08-20 04:43 GMT
Sections?
Information?
Find Nodes?
Leftovers?
Voting Booth?
Who is your favorite scientist and why?

Results (313 votes). Check out past polls.

Notices?