in reply to HTTP::Request pipe through regex

the question, presumably, is why does it not work like I think it should work.

note that getprint prints the fetched information and returns a status code (update: you'll want get(), instead). Also note that =~ s/// does an inplace search & replace and returns the number of replaces. Also also note that =~ will do the replace on the url first and then pass the number of matches to the getprint() routine. You'll want to use more parentheses to avoid this kind of confusion.