Trouble matching specific table rows....
Posted: Thu Oct 04, 2007 12:56 pm
I'm trying to match rows from an HTML table that contain a value in the fourth cell. I want to strip out the rest of the rows from the table.
EX:
if you look at that, you'll see that the fourth column either contains DEF or PLA. I only want the rows that have DEF in the fourth column. I am planning to strip them out from the table and then rebuild the table. I tried this:
but that grabs all the rows....
any better ideas?
tia,
Burr
EX:
Code: Select all
<tr bgcolor='white'>
<TD class="GridAttrField">070905499</TD>
<TD class="GridAttrField">DC</TD>
<TD class="GridAttrField">blah</TD>
<TD class="GridAttrField">PLA</TD>
<TD class="GridAttrField"></TD>
<TD class="GridAttrField">blah</TD>
<TD class="GridAttrField"></TD>
<TD class="GridAttrField">blah</TD>
<TD class="GridAttrField">UT</TD>
<TD class="GridAttrField">blah</TD>
</TR>
<tr bgcolor='#dddddd'>
<TD class="GridAttrField">070905499</TD>
<TD class="GridAttrField">DC</TD>
<TD class="GridAttrField">blah</TD>
<TD class="GridAttrField">DEF</TD>
<TD class="GridAttrField"></TD>
<TD class="GridAttrField">blah</TD>
<TD class="GridAttrField"></TD>
<TD class="GridAttrField">blah</TD>
<TD class="GridAttrField">UT</TD>
<TD class="GridAttrField">84404</TD>
</TR>
<tr bgcolor='white'>
<TD class="GridAttrField">070905499</TD>
<TD class="GridAttrField">DC</TD>
<TD class="GridAttrField">blah</TD>
<TD class="GridAttrField">DEF</TD>
<TD class="GridAttrField"></TD>
<TD class="GridAttrField">blah</TD>
<TD class="GridAttrField"></TD>
<TD class="GridAttrField">blah</TD>
<TD class="GridAttrField">UT</TD>
<TD class="GridAttrField">84404</TD>
</TR>
<tr bgcolor='white'>
<TD class="GridAttrField">070905500</TD>
<TD class="GridAttrField">DC</TD>
<TD class="GridAttrField"> blah</TD>
<TD class="GridAttrField">PLA</TD>
<TD class="GridAttrField"></TD>
<TD class="GridAttrField">blah</TD>
<TD class="GridAttrField"></TD>
<TD class="GridAttrField">blah</TD>
<TD class="GridAttrField">UT</TD>
<TD class="GridAttrField">84401</TD>
</TR>
<tr bgcolor='#dddddd'>
<TD class="GridAttrField">070905500</TD>
<TD class="GridAttrField">DC</TD>
<TD class="GridAttrField">blah</TD>
<TD class="GridAttrField">DEF</TD>
<TD class="GridAttrField"></TD>
<TD class="GridAttrField">blah</TD>
<TD class="GridAttrField"></TD>
<TD class="GridAttrField">blah</TD>
<TD class="GridAttrField">UT</TD>
<TD class="GridAttrField">84403-7017</TD>
</TR>Code: Select all
preg_match_all("#(<tr.*?>DEF</td>.*?</tr>)#mis",$string,$matches);
echo "<pre>";
print_r($matches[1]);
echo "</pre>";any better ideas?
tia,
Burr