OldComp.cz

Komunitní diskuzní fórum pro fanoušky historických počítačů

Registrujte se zde!

Právě je 15 lis 2018, 11:13

Všechny časy jsou v UTC + 1 hodina




Odeslat nové téma Odpovědět na téma  [ Příspěvek: 1 ] 
Autor Zpráva
PříspěvekNapsal: 07 čer 2018, 09:57 
Offline
Profík
Uživatelský avatar

Registrován: 07 črc 2013, 23:28
Příspěvky: 859
Has thanked: 132 times
Been thanked: 140 times
Nejsem moc zdatný co se vymýšlení regulárních výrazů týče, vlastně bych počet jejich použití dokázal spočítat na prstech jedné ruky. Ale tenhle týden jsem opravdu urgentně potřeboval parsovat soubory Visual Studia (konkrétně *.sln) a trochu je změnit (a nechtěl jsem se mordovat s COMáckým interfacem SDKčka k Visual Studiu).
Kód:
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ClrImageManager", "BfCore\ClrWrapper\ClrImageManager\ClrImageManager.vcxproj", "{0602669A-AB0D-410E-907C-98C03E6F7096}"

Neskutečně mi přišla vhod jedna on-line služba na tvorbu regulárních výrazů - txt2re.com. Jednoduše vložíte "sample" řádky, kterou chcete parsovat (např. ta nahoře) a klikáním na jednotlivé její komponenty (např. číslo, řetězec, řetězec uzavřený v závorkách apod.) poskládáte výsledný výraz.
V mém případě (a po drobných ručních úpravách) vypadlo (komentáře a formátování je už moje dílo)
Kód:
Regex r=new Regex(  "(Project\\(.*\\)\\s+=\\s+)" +   // 'Project(<parent>) = '
                    "(\".*?\",\\s+)" +        // '"<projectName>", '
                    "(\")(.*?)(\",\\s+)"+     // '"<projectFileName>", '
                    "(\")(.*?)(\")",          // '"<projectGuid>"'
                    RegexOptions.IgnoreCase | RegexOptions.Singleline
                );

txt2re.com - skvělá výpomoc! :thumbup:

_________________
より良い競争相手からソフトウェアを購入する (。◕‿‿◕。)


Nahoru
 Profil  
 
Zobrazit příspěvky za předchozí:  Seřadit podle  
Odeslat nové téma Odpovědět na téma  [ Příspěvek: 1 ] 

Všechny časy jsou v UTC + 1 hodina


Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 3 návštevníků


Nemůžete zakládat nová témata v tomto fóru
Nemůžete odpovídat v tomto fóru
Nemůžete upravovat své příspěvky v tomto fóru
Nemůžete mazat své příspěvky v tomto fóru
Nemůžete přikládat soubory v tomto fóru

Hledat:
Přejít na:  
Založeno na phpBB® Forum Software © phpBB Group
Český překlad – phpBB.cz