Perl Script Syntax to Extract Everything After Special Character

Hi,

I am writing a Perl script that reads in many lines, if a line meets the criteria I want to edit, it. For example, the script will return the following example line... test=abc123

All I want to do is strip off the "test=" and just be left with the abc123. In my script I can easily return everything before the "=" but for the life of me I can't get everything after the "=". A snipit of the code is...

$line3=<FILE>;
$line3=~ s/^\s+//; #strips off space
$line3=~s/=.*//; #returns everthing before "="

Any help would be greatly appreciated, thanks.

print "$line3\n";

Just swap around the '=' and the '.*' in your last statement. You are currently doing a search-and-replace of '=' followed by any number of other characters with nothing, so you just want to reverse the two.

Thanks Annihilannic, this worked perfectly.

First of all thanks for your help. I made this script out of the need to extract the youtube video name from a youtube address. I hope it helps.

Warmest regards,

Tony Mty

#!/usr/bin/perl
# s.u.f.y.a.
# Strip the Url From a Youtube Address
# Purpose: This small perl snippet will extract the name of the video out
# from a youtube address.
# Based on:
# UNIX.COM Message
# hth
# tony mty
#
print "\Script to strip the url from a youtube address";
print "\nYoutube URL: ";
$youtubesurl = <STDIN>;
$youtubesurl=~ s/^\s+//; #strips off space
$youtubesurl=~s/.watch\?v=//; #returns everthing after "watch?="
$youtubesurl=~s/&.
//; #returns everthing before "$"
print "$youtubesurl\n";
print "Done.\n";