Cat Photos
+ +Click here to view more cat photos.
+
+ Click here to view more cat photos.
+
+ Click here to view more cat photos.
+
+ Click here to view more cat photos.
+
+ Click here to view more cat photos.
+
+ Click here to view more cat photos.
+
+
+ 555-555-5555+ +В цьому челенджі вам буде надано рядок, наприклад `800-692-7753` або `8oo-six427676;laskdjf`. Ваше завдання – підтвердити або відхилити мобільний номер США на основі будь-якої комбінації форматів, наданих вище. Код зони нумерації є обов'язковим. Якщо надано телефонний код країни, то ви повинні підтвердити, що телефонний код країни – `1`. Поверніть `true`, якщо рядок є дійсним мобільним номером США; в іншому випадку, поверніть `false`. + +# --hints-- + +`telephoneCheck("555-555-5555")` повинен повертати булеве значення. + +```js +assert(typeof telephoneCheck('555-555-5555') === 'boolean'); +``` + +`telephoneCheck("1 555-555-5555")` повинен повертати `true`. + +```js +assert(telephoneCheck('1 555-555-5555') === true); +``` + +`telephoneCheck("1 (555) 555-5555")` повинен повертати `true`. + +```js +assert(telephoneCheck('1 (555) 555-5555') === true); +``` + +`telephoneCheck("5555555555")` повинен повертати `true`. + +```js +assert(telephoneCheck('5555555555') === true); +``` + +`telephoneCheck("555-555-5555")` повинен повертати `true`. + +```js +assert(telephoneCheck('555-555-5555') === true); +``` + +`telephoneCheck("(555)555-5555")` повинен повертати `true`. + +```js +assert(telephoneCheck('(555)555-5555') === true); +``` + +`telephoneCheck("1(555)555-5555")` повинен повертати `true`. + +```js +assert(telephoneCheck('1(555)555-5555') === true); +``` + +`telephoneCheck("555-5555")` повинен повертати `false`. + +```js +assert(telephoneCheck('555-5555') === false); +``` + +`telephoneCheck("5555555")` повинен повертати `false`. + +```js +assert(telephoneCheck('5555555') === false); +``` + +`telephoneCheck("1 555)555-5555")` повинен повертати `false`. + +```js +assert(telephoneCheck('1 555)555-5555') === false); +``` + +`telephoneCheck("1 555 555 5555")` повинен повертати `true`. + +```js +assert(telephoneCheck('1 555 555 5555') === true); +``` + +`telephoneCheck("1 456 789 4444")` повинен повертати `true`. + +```js +assert(telephoneCheck('1 456 789 4444') === true); +``` + +`telephoneCheck("123**&!!asdf#")` повинен повертати `false`. + +```js +assert(telephoneCheck('123**&!!asdf#') === false); +``` + +`telephoneCheck("55555555")` повинен повертати `false`. + +```js +assert(telephoneCheck('55555555') === false); +``` + +`telephoneCheck("(6054756961)")` повинен повертати `false`. + +```js +assert(telephoneCheck('(6054756961)') === false); +``` + +`telephoneCheck("2 (757) 622-7382")` повинен повертати `false`. + +```js +assert(telephoneCheck('2 (757) 622-7382') === false); +``` + +`telephoneCheck("0 (757) 622-7382")` повинен повертати `false`. + +```js +assert(telephoneCheck('0 (757) 622-7382') === false); +``` + +`telephoneCheck("-1 (757) 622-7382")` повинен повертати `false`. + +```js +assert(telephoneCheck('-1 (757) 622-7382') === false); +``` + +`telephoneCheck("2 757 622-7382")` повинен повертати `false`. + +```js +assert(telephoneCheck('2 757 622-7382') === false); +``` + +`telephoneCheck("10 (757) 622-7382")` повинен повертати `false`. + +```js +assert(telephoneCheck('10 (757) 622-7382') === false); +``` + +`telephoneCheck("27576227382")` повинен повертати `false`. + +```js +assert(telephoneCheck('27576227382') === false); +``` + +`telephoneCheck("(275)76227382")` повинен повертати `false`. + +```js +assert(telephoneCheck('(275)76227382') === false); +``` + +`telephoneCheck("2(757)6227382")` повинен повертати `false`. + +```js +assert(telephoneCheck('2(757)6227382') === false); +``` + +`telephoneCheck("2(757)622-7382")` повинен повертати `false`. + +```js +assert(telephoneCheck('2(757)622-7382') === false); +``` + +`telephoneCheck("555)-555-5555")` повинен повертати `false`. + +```js +assert(telephoneCheck('555)-555-5555') === false); +``` + +`telephoneCheck("(555-555-5555")` повинен повертати `false`. + +```js +assert(telephoneCheck('(555-555-5555') === false); +``` + +`telephoneCheck("(555)5(55?)-5555")` повинен повертати `false`. + +```js +assert(telephoneCheck('(555)5(55?)-5555') === false); +``` + +`telephoneCheck("55 55-55-555-5")` повинен повертати `false`. + +```js +assert(telephoneCheck('55 55-55-555-5') === false); +``` + +`telephoneCheck("11 555-555-5555")` повинен повертати `false`. + +```js +assert(telephoneCheck('11 555-555-5555') === false); +``` + +# --seed-- + +## --seed-contents-- + +```js +function telephoneCheck(str) { + return true; +} + +telephoneCheck("555-555-5555"); +``` + +# --solutions-- + +```js +var re = /^([+]?1[\s]?)?((?:[(](?:[2-9]1[02-9]|[2-9][02-8][0-9])[)][\s]?)|(?:(?:[2-9]1[02-9]|[2-9][02-8][0-9])[\s.-]?)){1}([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2}[\s.-]?){1}([0-9]{4}){1}$/; + +function telephoneCheck(str) { + return re.test(str); +} + +telephoneCheck("555-555-5555"); +```
(555)555-5555
(555) 555-5555
555 555 5555
5555555555
1 555 555 5555