Hello, I have a regular expression that is used to take data from a table.
while($innerTable =~ m/\<TR\> \<TD\> \<A HREF=".*?" target="dictionary" TITLE=".*?"\> (.*?)\<\/A\> \<\/TD\> \<TD\> (.*?) \<\/TD\> \<TD\> (.*?) \<\/TD\> \<TD\>(\s*\<A TITLE=".*?" HREF=".*?" TARGET="dictionary"\> (.*?)\<\/A\>=[0-9]+\s*(\<\/A\>)*\s*)*\<\/TD\>/gs) { print "$1 $2 $3 $5\n"; } This matches the pattern fine and is printing almost the correct results. The only thing missing is the last section, where I have a variable group inside a repeated match: (\s*\<A TITLE=".*?" HREF=".*?" TARGET="dictionary"\> (.*?)\<\/A \>=[0-9]+\s*(\<\/A\>)*\s*)* As you can see I have the group (.*?) inside the inner loop (<everything>)* If I print out $5 I get a result. How do I get the others? i.e. <A TITLE=" 66% verb: To come near or nearer to, or to set about a task" HREF="dictKS/dictKS00.html#APPROACH" TARGET="dictionary"> APPROACH#1</A>=1 <A TITLE=" tags: Modif Strng Actv Time* Ovrst" HREF="dictKS/dictKS18.html#SPEED" TARGET="dictionary"> SPEED#1</A>=1 </ A> should match twice. The thing is I need to find both matching internal values Thus, APPROACH#1 and #SPEED1 should be returned. Does anyone know how I do this? -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] http://learn.perl.org/