Perl - kopie části řetězce na jiné místo

jiri.rambousek na veba.cz jiri.rambousek na veba.cz
Úterý Únor 4 14:34:58 CET 2003


> Dobrý den,
> jelikož moc neskriptuji, dovoluji si poprosit o radu, jak co nejsnadněji
> vytvořit perlový skript, který načte řádek textového souboru, uloží do
> proměnné např. 7. až 12. znak a tuto proměnnou vloží na ten samý řádek
tak
> , aby poslední znak proměnné byl např na pozici 100. znaku.

perl -in -e 'printf "%100s\n",substr($_,6,6)' soubor.txt

Pokud nechcete ten soubor modifikovat, pak vynechte parametr 'i'

> Za každou radu předem velice děkuji a omlouvám se těm, kteří budou tento
> dotaz považovat za off-topic.

--
                        Milan Kerslager
                        E-mail: milan.kerslager na pslib.cz
                        WWW:    http://www.pslib.cz/~kerslage/

Pane Kerslagere,
velice dekuji za odpoved, ale bohuzel to nefunguje. Je mozne, ze jsem
zadani spatne vysvetlil. Zkusim to jeste jednou a zaroven pridam
jednoradkovy vzorovy soubor. Radek je komplikovany (retezce znaku oddelene
vice mezerami), ale ma vzdy stejnou strukturu. Potrebuji tedy napsat
skript, ktery projede soubor a na kazdem radku nakopiruje 7. - 12. znak (ve
vzorovem souboru "000007") tak, aby posledni z techto sesti znaku byl na
pozici 457. znaku (pripadne zleva oriznout nuly, pokud by to bylo
jednoduche). Pokud me budete ochoten popostrcit, budu velice rad a predem
dekuji za vynalozenou namahu.

(See attached file: text.txt)

Jiri Rambousek

------------- další část ---------------
20115000000701151                 aaaaa                         115110D       20001199300000002                         000000005790600000000003250000000000300000000036000000000000000000000000000000000000000000000000 00361212              0303408030200180000000200120000000001                          0000000 030500000000                      0000                       6800000000000                              000000000000000000000000000000000                                   000000000000000000000000000000


Další informace o konferenci Linux