Autor | Zpráva | ||
---|---|---|---|
suvel Profil |
#1 · Zasláno: 27. 2. 2015, 21:23:32
Protože mě trochu tlačí čas a dobře se neorientuji v regulárních výrazech, prosím o pomoc: Potřebuji javascriptem zkontrolovat, jestli číslo ulice je zapsané buď jen jako číslo, nebo jako číslo/číslo (např. 123 nebo 123/4) a současně by se měly tolerovat případné mezery před a za lomítkem (123 / 4). Předem děkuji za pomoc.
|
||
lionel messi Profil |
suvel:
Jednoduchá funkcia, regulár pre popísané prípady funguje, existenciu kratšej alternatívy nevylučujem. function validCisloUlice(cislo) { var pattern = /^\d+( ?\/ ?\d+)?$/; if (pattern.test(cislo)) { return true; } else { return false; } } Upravené, v pôvodnej verzii neprechádzalo prosté jednociferné číslo. |
||
Tomáš123 Profil |
#3 · Zasláno: 27. 2. 2015, 21:45:38
lionel messi:
Nie je na riadku 2 jedno plusko navyše? Formát má byť 123/4. |
||
lionel messi Profil |
#4 · Zasláno: 27. 2. 2015, 21:53:42
Tomáš123:
„Nie je na riadku 2 jedno plusko navyše? Formát má byť 123/4.“ Dobrá pripomienka, v číslovaní ulíc sa nevyznám, ale myslím si, že suvel má na mysli formát číslovania v tvare číslo súpisné / číslo orientačné. A nikde nie je napísané (pred reakciou na tvoj príspevok som si to overoval), že české súpisné (resp. v češtine popisné) alebo orientačné čísla musia pozostávať len z jedinej číslice. Ale môžem sa mýliť. |
||
juriad Profil |
#5 · Zasláno: 27. 2. 2015, 22:06:31
lionel messi:
Lze to zjednodušit třeba takto: function validCisloUlice(cislo) { return /^\d+( ?\/ ?\d+)?$/.test(cislo); } |
||
suvel Profil |
Děkuji všem, takhle je to OK. Jen poznámka: někdo vyplňuje první popisné a druhé orientační, někdo naopak.
|
||
Chamurappi Profil |
#7 · Zasláno: 27. 2. 2015, 22:28:51
Reaguji na suvela:
V některých číslech orientačních můžou být i písmena. Nevím, jestli jsou pro ně nějaká přesná pravidla. |
||
lionel messi Profil |
#8 · Zasláno: 27. 2. 2015, 22:33:55
suvel:
Asi najkomplexnejší je tento regulár funkčný aj pre JS: www.regularnivyrazy.info/regularni-vyraz-adresa.html#.VPDiSxafVyU (rieši aj písmená v orientačnom čísle). |
||
suvel Profil |
#9 · Zasláno: 27. 2. 2015, 22:42:12
Chamurappi, lionel messi:
Přesně to jsem teď řešil - za číslem může být jedno písmeno. Taže si myslím, že úplně vyhovuje /^\d+[a-zA-Z]?( ?\/ ?\d+[a-zA-Z]?)?$/ (možná jsem se už něco naučil :-) Akorát, že jako první číslice může být 0, ale to mě neprudí. A ten odkaz v #8 neřeší co jsem už psal - že lidi ty čísla píšou každý v jiném pořadí, tak tady lze přidat písmenko pro jistotu za obě čísla.
|
||
Časová prodleva: 8 let
|
0