Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:
Funkce, kterou se snažíš použít je dostupná pouze pro registrované uživatele. Buďto se přihlas nebo si zdarma vytvoř nový účet.
Funkce, kterou se snažíš použít je dostupná pouze pro registrované uživatele. Buďto se přihlas nebo si zdarma vytvoř nový účet.

Revgex

Knižnica a program pre generovanie náhodných testovacích dát pomocou "jazyka" nápadne podobného regulárnym výrazom.

Na projekte pracujem sám, napísaný je v C# za použitia Windows Forms.

Projekt využíva FastColoredTex­tBox komponent.

Popis jazyka

Základ jazyka je podobný regulárnym výrazom

  • negarantované znak (alebo rezervovaný ktorý je predchádzanie spätným lomítkom) -> vypísaný na výstup
  • [Abc123] -> vypísaný náhodný znak z výberu, možno používať aj intervaly - napr. Az
  • \ D, \ s pod. -> kategória znakov (možné použiť aj vo vnútri []): \ d sú číslice, \ s biele znaky, \ w písmená, číslice a _, veľkým pišťanie sa značí opak (napr. \ D -> čokoľvek okrem číslic)
  • () -> skupina, môže začínať výrazom v tvare: názov; - teda (: názov; kód) -> takto možno skupinu pomenovať
  • * -> náhodný počet opakovaní, horný limit je zadaný v aplikácii ( "Repetition limit"), častejšie generuje menej opakovaní
  • + -> ako *, ale vždy vygeneruje aspoň 1 výskyt
  • {N} -> n výskytov
  • {N,} -> aspoň n výskytov
  • {N, m} -> aspoň n, najviac m výskytov
  • (Abc | 012) -> znak '|' oddeľuje možnosti, z možností va danej skupine sa náhodne vyberie
  • . -> ľubovoľný znak
  • \ 01 -> spätná referencie na 1. skupinu
  • \: Názov; -> spätná referencie na skupinu s daným názvom
  • $ 01 -> spätná referencie na 1. skupinu, namiesto generovanie použije naposledy vygenerovanú hodnotu
  • $: Názov; -> spätná referencie na skupinu s daným názvom, namiesto generovanie použije naposledy vygenerovanú hodnotu

Pozn .: rekurzia nie je povolená

Ďalšie syntaxe

  • (! X kód) -> modifikuje všetko čo je generované jej obsahom na základe znaku za výkričníkom
U prevod na veľké písmená
l prevod na malé písmená
C veľké písmená na začiatku slov
_ nahradí medzery a pomlčky za podčiarknutia
'' nahradí pomlčky a podčiarknutia za medzery
- nahradí medzery a podčiarknutia za pomlčky
n odstráni medzery
t odoberie biele znaky zo začiatku a konca
0 odoberie nuly zo začiatku
! výstup kódu je skrytý - možno použiť ako komentár alebo pre defiince skupín ktoré majú byť použité neskôr
- (?: Kód) -> na skupinu nemožno spätne odkazovať, v číslovaní skupín je ignorovaná
  • ( "Oddeľovač; opakovanie kód) -> generuje pomocou kódu toľkokrát, koľko je dané opakovaním, vygenerovaté výrazy oddelí oddeľovačom, napr. (", \; {5} \ d {2})
  • ( 'Oddeľovač; opakovanie kód) -> ako s dvojitými úvodzovkami, ale generuje iba jeden výraz a ten opakuje

Poznámky k aplikácii

  • voľby pre ignorovanie bielych znakov v aplikácii sú tu pre umožnenie formátovanie "kódu". Pokiaľ má byť biely znak predsa len vygenerovaný, stačí použiť spätné lomítko ( "\" pre medzeru, "\ n" pre koniec riadky)
  • Filter umožňuje filtrovať vygenerované texty na základe regulárneho výrazu
  • knižnica generuje iba ASCII znaky
  • aplikácia umožňuje uložiť výstup do súboru

Vyjadrenie poroty

  • Dan Vítek - 9 bodov - Super aplikácie, osobne som niečo také už nejakú dobu hľadal. Funguje dobre, reálne mi tam chýbal nejaký, aspoň základné, syntax highlighting. Stačilo by, aby oddelil farebne skupiny, makrá a ďalšie fce od textu.
  • Adam Ježek - 10 bodov - Dobrý nápad, aplikácie funkčné, viem si predstaviť jej využitie, v GUI nie sú žiadne nepotrebné grafické prvky.

V nasledujúcom cvičení, Cvičenie 1 - Spájanie textu, si precvičíme nadobudnuté skúsenosti z predchádzajúcich lekcií.


Galéria


 

Stiahnuť

Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkami

Stiahnuté 14x (1.26 MB)
Aplikácia je vrátane zdrojových kódov v jazyku C#

 

Všetky články v sekcii
Zdrojákoviště C # .NET - Okenné aplikácie Windows Forms
Preskočiť článok
(neodporúčame)
Cvičenie 1 - Spájanie textu
Program pre vás napísal Zdeněk Pavlátka
Avatar
Užívateľské hodnotenie:
Ešte nikto nehodnotil, buď prvý!
Autor se věnuje spoustě zajímavých věcí ze světa informatiky a grafiky
Aktivity