Hirdetés
- Kuo: Az Apple lenyelheti a dráguló memóriaárakat az iPhone 18-nál
- Rekord negyedévet zárt az Apple
- Szívós, szép és kitartó az új OnePlus óra
- Apple iPhone Air - almacsutka
- OnePlus 15 - van plusz energia
- Okosóra és okoskiegészítő topik
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- Felújított okostelefonokat kínál a Rejoy
- Honor Magic6 Pro - kör közepén számok
- Tokgyártó leplezi le újból a Galaxy S26 Ultra formáját
-
Mobilarena

Új hozzászólás Aktív témák
-
bLaCkDoGoNe
veterán
Szuper, köszi.

A freeCodeCamp-en a Javascript blokkot csinálom, és az egyik projekt feladat az, hogy kell írni egy telefonszám formátum ellenőrző függvényt, ami a megadott számsorozatot adott szempontok szerint validálja, és visszaköp egy boolean-t eredményül.
Elsőre úgy gondoltam, hogy ezt regex-szel lenne a legegyszerűbb megoldani, úgy, hogy egy viszonylag komplex kifejezéssel ellenőrizném az összes szükséges szempontot, de két napja szuggerálom a megírt regex-emet, mert két teszteset elbukik rajta, és egyszerűen nem látom, hogy hol megy félre. A legvalószínűbb persze, hogy mivel most tanulom a dolgot, hülyeséget csináltam valahol, bár a regex101.com-on végigzavarva olyan nagy marhaságot elsőre nem találtam benne, lehet hogy egyszerűen valahol rosszul tagoltam valamit például, ami működik így is, csak nem a szándékaim szerint.
A regex, amit összeraktam, így néz ki:
/(^(1))?(\s)?((\([0-9]{3}\))*|\d{3})(\s|[-])?(\d{3})(\s|[-])?(\b\d{4})/
és szándékaim szerint az alábbiakat ellenőrizné:
- opcionálisan 1-essel kezdődik-e a szám
- az egyes után opcionálisan whitespace
- van egy három számot tartalmazó blokk zárójelek között VAGY zárójelek nélkül
- ezt követően opcionális whitespace vagy kötőjel
- ezt követően három számot tartalmazó blokk
- ezt követően opcionális whitespace vagy kötőjel
- végül egy négy számot tartalmazó blokk.Ez a két testcase nem az elvárt eredményt adja vissza:
telephoneCheck("5555555555") should return true.
telephoneCheck("555-5555") should return false.Tudnátok valami iránymutatást adni, hogy hol van a hiba abban, amit csináltam? Vagy eleve lehetetlen az összes teszt esetet egy regex-szel lekezelni, és egy többszintű, elágazó szűrést kellene csinálnom több kifejezéssel?
Köszi a segítséget.

Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- 5.1, 7.1 és gamer fejhallgatók
- Bestbuy játékok
- Okos Otthon / Smart Home
- Azonnali fáradt gőzös kérdések órája
- OLED TV topic
- Kuo: Az Apple lenyelheti a dráguló memóriaárakat az iPhone 18-nál
- Kormányok / autós szimulátorok topikja
- Mit tehetsz jogilag, ha átvertek, megkárosítottak a Hardveraprón?
- Sózd a jégakkut! Megoldotta a CATL a téli akkuproblémákat
- Allegro vélemények - tapasztalatok
- További aktív témák...
- Apple iPhone 15 256GB, Kártyafüggetlen, 1 Év Garanciával
- Apple iPhone 11 Pro 64GB, Kártyafüggetlen, 1 Év Garanciával
- Eladó EDIFIER ES prémium hangszórók ES300 / ES60 / ES20
- Újszerű Asus 15,6"FullHD,10.gen.Core i7(8x3,7Ghz)MX330 2/4GB DDR5 VGA,Vil.bill,12-40GB/256-512SSD+HD
- BONTATLAN DOBOZOS LENOVO LOQ 17 // i7-13650HX // 24GB RAM // 1TB SSD // RTX 5060
- BESZÁMÍTÁS! LENOVO ThinkPad P15 Gen2 munkaállomás - i7 11800H 64GB DDR4 1TB SSD RTX A2000 4GB W
- iPhone 13 Pro Max 128GB 100% (1év Garancia)
- iPhone 13 Mini 128GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS4509, 100% Akksi
- BESZÁMÍTÁS! MSI B460M 10400F 16GB DDR4 512GB SSD RX 6600XT 8GB Rampage SHIVA Cooler Master 650W
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: Laptopműhely Bt.
Város: Budapest





