Reguláris kifejezés: a case-insensitive és a csoportosítás miért nem működik egyszerre?
^(egy|kettő|három)$
Ezzel nincs baj, csak ezt a három szót fogadja el, és csak ebben a formában.
^(?i)(egy|kettő|három)$
Ez már nem úgy működik, ahogy szerintem kellene. Nem figyel a kis- és nagybetűkre, ez oké, cserébe viszont nemcsak ezt a három szót fogadja el, hanem bármit.
Már rengeteg variációt kipróbáltam, de egyik sem vezetett eredményre. Van valakinek ötlete, hogy hogyan oldhatnám meg, hogy csak a megadott szavakat fogadja el, azoknál viszont ne tegyen különbséget a kis- és nagybetű között?
Előre is köszönöm!
Az ékezetekkel nincs probléma. Csak, ha azt a módosíót hozzáteszem, akkor mindent elfogad.
Amúgy meg most derült ki, hogy nemcsak az elejével van baj, pedig az online ellenőrzőben működött. Élesben viszont a többi résznél is elszáll néha.
Ez lenne, amivel próbálkozom:
^((?i)(január|február|március|április|május|június|július|augusztus|szeptember|október|november|december)|\d{1,2}|\d{4}|[<|>]?\d{4})$
Próbáld meg a linkelt válaszban lévő megoldást.
Egyébként a különböző regex implementációk eltérhetnek egymástól, nem mind tudja az összes ilyen-olyan szabvány változatot.
Én is csak azt tudom mondani, hogy attól függetlenül, hogy nyilván meg lehet csinálni az általad áhított reguláris kifejezést, de vajon mennyire hasznos/életszerű/magától értetődő/könnyen használható egy olyan mező, ami hónapok neveit és mindenféle számokat fogad el, megfűszerezve némi logikai operátorokkal.
Az a tapasztalatom, hogy ha valamilyen problémát nagyon nehezen tudsz megoldani az általában csak annyit jelez, hogy rosszul közelíted meg.
Ha dátumot akarsz bevinni, akkor használj valamilyen kész DatePicker megoldást. Ha intervallumot akarsz meghatározni (gondolom valami ilyesmit akarnak jelenteni a kacsacsőrök), akkor használj kettőt, amiből csak az egyiket kötelező kitölteni, a másik ilyenkor automatikusan felvesz egy min/max értéket.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!