in reply to Something wrong reusng $1 vars

I'm having trouble understanding your question, but I think your problem is probably caused by the second regex not matching. When a regex doesn't match the $1, $2, etc. variables are left the same. (Handy so you can do things like $something = $1 if /pat1/ or /pat2/ or /pat3/; and take the $1 from whatever pattern matches.)

If this is the case then the solution is to fix your regex to match what you want it to match. You might find HTML::TableExtract and/or HTML::Parser more convient for this task then regexs alone.

update: If you want to check if a regex matches you should examine it's return value, which is (almost) always a good idea. For example: $html =~ /some regex here/ or die "Couldn't match ...\n"; If you get into a habit of having some code to handle the regex not matching you can prevent difficult to fiquire out bugs from occuring when $1 and such doesn't contain what you expect.