Autor Zpráva
PecaCZ
Profil
Zdravim o pomoc s regulárem.
Potřebuji v PHPku, když nějaká buňka v tabulce by obsahovala např. slovo "Novák", tak aby <tr> přidalo atribut class='novak'

př.
<table>
<tr><td>Jan</td><td>Novák</td>
<tr><td>Jan</td><td>Svoboda</td>
<tr><td>Josef</td><td>Novák</td>
</table>

upravit na :
<table>
<tr class='novak'><td>Jan</td><td>Novák</td>
<tr><td>Jan</td><td>Svoboda</td>
<tr class='novak'><td>Josef</td><td>Novák</td>
</table>

Předem díky.
radas
Profil *
no jestli jsem to pochopil správně tak každému druhému tr by se měl vložit class='novak' ? spočitat řadky a pak přes podminku
if($i%3==0) echo 'class="novak"';

tak bych to řešil ja ale co to má co s Pomoc s Regulárním výrazem ?
PecaCZ
Profil
no jestli jsem to pochopil správně tak každému druhému tr by se měl vložit class='novak' ? spočitat řadky a pak přes podminku
if($i%3==0) echo 'class="novak"';
tak bych to řešil ja ale co to má co s Pomoc s Regulárním výrazem ?

no ja jsem neřikal že to bude každý 2 řádky, ja to prostě potřebuju jenom když to obsahuje např. Novák
ninja
Profil
jen tak z hlavy:

eregi_replace('<tr>(.*<td>Novák</td>)','<tr class="novak">\\1');
PecaCZ
Profil
jen tak z hlavy:
1 eregi_replace('<tr>(.*<td>Novák</td>)','<tr class="novak">\\1');

Díky moc.
Takhle to teda funguje jenom 1x, kdyby jsi vědel jak to udělat víckrát tak by to bylo fajn.
Kcko
Profil
$out = '<table>
<tr><td>Jan</td><td>Novák</td>
<tr><td>Jan</td><td>Svoboda</td>
<tr><td>Josef</td><td>Novák</td>
</table>

';


$out = preg_replace('~<tr>(.*<td>Novák</td>)~U','<tr class="novak">\\1', $out);
echo $out;

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: