Diskuze: RegularExpression - pomlčka
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 3 zpráv z 3.
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Na Regexy som síce tiež ľavý, takže tento môj výtvor asi nebude veľmi efektívny, ale malo by to robiť čo chceš:
^([[0-9]+[-]?[0-9]*)+(?<![-])$
Prvá okrúhla zátvorka testuje, či sa v reťazci nachádza podreťazec zložený s čísel a s voliteľnou pomlčkou. Keďže ale táto prvá zátvorka povoľuje aj možnosť daný reťazec pomlčkou ukončiť, výraz v druhej okrúhlej zátvorke by mal kontrolovať, že sa reťazec nekončí pomlčkou.
Bohužiaľ ale Regex nestráži dĺžku reťazca, to si ošetri na danej vlastnosti atribútom MaxLength.
[0-9] je rozsah 0 az 9. Jestli tam chces pomlcku, pak neco z tohoto by melo
fungovat
[0-9-]
[-0-9]
[0-9\-] escapovani znaku (lomitka) pro regular
[0-9\\-] escape kvuli stringu
[0-9\\\\-] escape kvuli stringu, pokud se preklada ze stringu
Ale sel bych spis do podobne verze jako psal Martin.
^[0-9]+([-][0-9]+)+$
Navic bych se s tou informaci nezabyval, proste uzivateli ty znaky smazu. A
pouze ho upozornim, ze jsem mu tam neco odmazal, at potvrdi, ze je to ted
spravne.
Coz ale muze uzivatele znejistet, jestli treba nejde o nejaky virus. V pripade
penez jsou uzivatele kupodivu pozornejsi nez u emailu
Zobrazeno 3 zpráv z 3.