in reply to spliting problems on $_ ?

You save all the variables, but only use one of them. One option is to only save the ones you need, and not bother with variables at the end of the list:

my(undef, $url) = split ....

Better is to extract only the elements you want:

my( $url ) = (split( /\|/, $_ ))[1];

--
TTTATCGGTCGTTATATAGATGTTTGCA