Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: Pave 26. 05. 2015, 19:42:43
-
Dobrý den, mám prosbu, se kterou si nevím rady. Mám textový soubor (tabulka v HTML), který vypadá takto (zjednodušeně):
...
<table>
<tr><td>Polozka1</td><td>Polozka2</td></tr>
<tr><td>Polozka3</td><td>Polozka4
</td></tr>
<tr><td>Polozka5</td><td>Polozka6</td></tr>
<tr><td>Polozka7</td><td>Polozka8
</td></tr>
<tr><td>Polozka9</td><td>Polozka10
</td></tr>
</table>
...
Problém je, že některé řádky nekončí </tr> na stejném řádku jako jsou položky. Potřeboval bych výstup takový:
<table>
<tr><td>Polozka1</td><td>Polozka2</td></tr>
<tr><td>Polozka3</td><td>Polozka4</td></tr>
<tr><td>Polozka5</td><td>Polozka6</td></tr>
<tr><td>Polozka7</td><td>Polozka8</td></tr>
<tr><td>Polozka9</td><td>Polozka1</td></tr>
Prosím o nakopnutí. Děkuji, Pavel.
-
Hele udelat to jde pomerne trivialne, zalezi co mas za nastroje - z shellu urcite nejakej replace (trebas grep), pripadne ve widlich trebas pspad, ale zajimalo by me, k cemu ti to bude dobry? Libovolnymu zobrazovadlu (browseru) to je jedno a pro parsovani je to taky jedno.
A urcite existuje i hromada vsemoznych formatovacich webu, pokud to ma byt jednorazovka a nejde o zadny tajny data. Dokonce bych rek, ze lecjakej browser ti to v podobe zdrojaku preformatuje.
-
Potřebuju to v bashi (sed, awk, ...) pro další dávkové zpracování. Děkuji, Pavel.
-
napada me sedem odmazat \r a \n a pak je pridat za kazdej </tr>
-
Uricte to de zmastiti do jednoho, ale z duvodu vyuky ... ;D
cat soubor | sed ':a;N;$!ba;s/\n//g' | sed 's/<tr/\r\n<tr/g' | sed 's/<\/table/\r\n<\/table/g'
-
nebo
cat soubor |perl -pe 's/[^>]\K\r\n//g'
odstraň nové řádky, kterým nepředchází >
-
Ja pouzivam
fromdos <dos.txt >unix.txt