Go back and re-read John's message. Then look at your conditionals. They are different. His work, yours don't.
Yours: 87 $back =~ /.*\(.*\) (.*?) .*/; 88 89 if ( $1 ) 103 $line =~ /.* \(.*\) (.*?) .*/; 104 105 if ( $1 ) His: | print "$1\n" if $var =~ /.*? \(.*\) (.*?) \(.*?\)/; | print "$1\n" if $var =~ /sdddd\(.*?\) (.*?) \(.*?\)/; You aren't checking to see if the REGULAR EXPRESSION SUCCEEDED. If the regular expression FAILS, then $1 retains the old value, it isn't reset. /\/\ark -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]