Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
trnkto
Člen
Avatar
trnkto:6.11.2015 12:46

Ahoj, můžete mi někdo poradit kde mam chybu v regulárním výrazu?

^[0-9]{1,9}|[0-9]{1,9}[.][0-9]{2}$

Chtěl jsem od něj 1-999999999 nebo 1.00-999999999.99

Podle různých návodů jsem došel ke výše zmíněnému, ale samozřejmě nefunguje.
Jak to chápu já:
^ - začátek hledání
[0-9] - číslice 0 až 9
{1,9} - počet znaků 1 až 9
"|" - nebo
[.] - znak . (tečka)
{2} - přesně dva znaky
$ - konec hledání

Díky moc

Editováno 6.11.2015 12:47
 
Odpovědět
6.11.2015 12:46
Avatar
Odpovídá na trnkto
Patrik Valkovič:6.11.2015 12:49

Nebyo by náhodou jednodušší převést to na double a zkontrolovat, že je to v určitém rozsahu? Než používat RegExp?

Nahoru Odpovědět
6.11.2015 12:49
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
coells
Tvůrce
Avatar
Odpovídá na trnkto
coells:6.11.2015 13:14

Nezávorkuješ a nekontroluješ počáteční nulu.

^[1-9][0-9]{0,8}(\.[0-9]{2})?$
 
Nahoru Odpovědět
6.11.2015 13:14
Avatar
trnkto
Člen
Avatar
trnkto:6.11.2015 13:26

patrik.valkovic:
Myslím, že bych tam musel hledat tu desetinou čárku ne?

coells:

if (!Regex.IsMatch(hodnota, "^[1-9][0-9]{0,8}(\.[0-9]{2})?$"))

asp mi ten escape nebere nemůže to být tedy [.]

 
Nahoru Odpovědět
6.11.2015 13:26
Avatar
coells
Tvůrce
Avatar
Odpovídá na trnkto
coells:6.11.2015 13:29
if (!Regex.IsMatch(hodnota, @"^[1-9][0-9]{0,8}(\.[0-9]{2})?$"))
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
6.11.2015 13:29
Avatar
trnkto
Člen
Avatar
Odpovídá na coells
trnkto:6.11.2015 13:35

Jéžiš. No to je krása, už to pěkně funguje
Zavináč pamatovat!!!
Děkuju moc

 
Nahoru Odpovědět
6.11.2015 13:35
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.