Nejsem dobrý programátor (jsem programátor-bastlíř-diletant-samouk), proto používám PSPad, který reguláry zvládá dobře, ovšem výhradně v rámci jednoho řádku. Pokud chci z textu odstranit veškerý balast, zůstane mi mraky volných řádků (a to ještě navíc dělám tak, že zkopíruji předmětný řetězec do dialogového okna NAHRADIT a nahradím prázdným řetězcem), přestože by na tohle za normálních okolností měl stačit jeden regulár (ENTER jako \r); takhle je to ovšem strašná otrava a především ztráta času.
Předpokládám, že linuxové editory jako Vi nebo Emacs by to asi zvládly, ale už dlouhou dobu nemám doma Linux; mám Windows 7 a i když byly patrně i pro Windows portovány, co pamatuju, měly tyhle editory na můj vkus dost nepohodlné ovládání pro člověka odkojeného DOSem a Windows, který se nechce učit nic nového – než bych zvládl jejich ovládání, patrně bych měl problém vyřešený dosavadním zdlouhavým způsobem.
Konkrétně mi jde o vytažení všech SMS z mobilu (Samsung GT-C 6112) za účelem archivace, jejich převedení do TXT a pospojování do jednoho souboru.
Vím, že existují programy jako MobilEdit nebo KIES, ale žádný z nich s mým mobilem nepracoval uspokojivě a nadto i když jsem se ke zprávám pomocí MobilEditu nakonec dostal, nechci zdlouhavě přetahovat texty metodou Copy-Paste.
Zprávy jsem ještě v mobilu vyexportoval (všechny najednou pomocí zatržítka, tedy záležitost tak na půl minuty) do souborů *.vmg (syntaxe značkovacího jazyka jako HTML nebo XML) a přes USB je přetáhl do počítače, Total Commanderem jsem je hromadně přejmenoval podle data jako 01.txt až nn.txt a ač jsou mé programátorské dovednosti mizerné, díky všelikým online PHP manuálům jsem je nakonec sloučil a zobrazil v prohlížeči (který samozřejmě \n v rámci HTML nijak neinterpretuje, ale pak stačí zobrazit zdroják a metodou Copy-Paste přenést do jednoho TXT souboru).
Abyste měli představu, jaký jsem „programátor“, můžete se ve spoileru podívat na předmětný script:
a to jsem ještě docela pyšný na to, jak úsporně jsem to celé opsal
► Zobrazit spoiler
[spoiler=Vylezl mi z toho následující text:]BEGIN:VMSG
VERSION:1.1
X-IRMC-STATUS:READ
X-IRMC-BOX:INBOX
BEGIN:VCARD
VERSION:2.1
N;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:=E4=AC=80=E7=88=80=E6=A4=80=E7=8C=80=E7=90=80=EC=8C=80=EB=B4=80=E6=B8=80=E6=84=
=80;;;;
FN;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:
TEL:(zde je telefonní číslo, které z pochopitelných důvodů neuvádím )
END:VCARD
BEGIN:VENV
BEGIN:VBODY
Date:24.01.2015 08:33:39
TEXT:Tady je text SMS zprávy, nadto veškerá diakritika je zmrzačená, například písmeno „ě“ je převedeno jako „=C4=9B“
END:VBODY
END:VENV
END:VMSG[/spoil]Potřebuji, aby mi z toho všeho zůstalo jen datum, čas a text zprávy, tedy jen to, co ve spoileru vidíte tučnými písmeny, přičemž a na řádku začínajícím „Date:“ chci nechat jen datum s mezerami za tečkami, ze dnů a měsíců odstranit prefixové nuly (ale ne u hodin), za rokem udělat čárku a z časové značky odstranit sekundy, tedy ve výše uvedené ukázce by mělo na řádku „Date:… zůstat toto: „24. 1. 2015, 08:33“.
Abych nikoho příliš nezatěžoval, stačil by mi tip na nějaký vhodný textový editor. Pokud by se tu ovšem nalezl dobrodinec, který by pro mě napsal vhodný PHP script (šlo by o zpracování jednoho sloučeného TXT souboru), byl bych mu nevýslovně povděčen.
A to je vše.