function telephoneCheck(str) {
// 祝你好运
//var re = /^1? ?(\(\d{3}\)|\d{3})[ |-]?\d{3}[ |-]?\d{4}$/;
//var flag = re.test(str);
//return flag;
return /^1? ?(\(\d{3}\)|\d{3})[ |-]?\d{3}[ |-]?\d{4}$/.test(str);
}

题目:

  如果传入字符串是一个有效的美国电话号码,则返回 true.

  

  telephoneCheck("555-555-5555")应该返回一个布尔值.
  telephoneCheck("1 555-555-5555")应该返回 true.
  telephoneCheck("1 (555) 555-5555") 应该返回 true.
     telephoneCheck("5555555555") 应该返回 true.
  telephoneCheck("555-555-5555")应该返回 true.
     telephoneCheck("(555)555-5555")应该返回 true.
   telephoneCheck("1(555)555-5555")应该返回 true.
   telephoneCheck("1 555)555-5555")应该返回 false.
   telephoneCheck("1 555 555 5555")应该返回 true.
   telephoneCheck("1 456 789 4444")应该返回 true.
   telephoneCheck("123**&!!asdf#")应该返回 false.
   telephoneCheck("55555555") 应该返回 false.
   telephoneCheck("(6505552368)")应该返回 false
   telephoneCheck("2 (757) 622-7382") 应该返回 false.
   telephoneCheck("0 (757) 622-7382") 应该返回 false.
 
分析:
  RegExp
 
  ?限定前面一个字符有一个或多个。
 
   | 表示或者,通常用括号括起来(前面|后面的内容),表示这是一个部分,
    只有一个字符的时候也可以用[]括起来。[]表示一个字符集。
 
  {阿拉伯数字} 表示前面的限定内容出现的次数。
 
  \d 限定阿拉伯数字。
 
  ^ 匹配字符串的开头什么都没有那一部分空白符  紧跟",又不是字符串的可见的一部分。
 
  $匹配字符串的结尾什么都没有的那一部分空白符, 在"前面又不是字符串的可见的一部分。
 
  RegExp.prototype.test()  
    概述:方法执行一个检索,用来查看正则表达式与指定的字符串是否匹配。返回 true 或 false
    https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/RegExp/test

Validate US Telephone Numbers FreeCodeCamp的更多相关文章

  1. FCC高级编程篇之Validate US Telephone Numbers

    Validate US Telephone Numbers Return true if the passed string is a valid US phone number. The user ...

  2. Validate US Telephone Numbers

    function telephoneCheck(str) { // Good luck! //return true; var phone = /^1? ?(\d{3}|\(\d{3}\))[ -]? ...

  3. FCC(ES6写法) Validate US Telephone Numbers

    如果传入字符串是一个有效的美国电话号码,则返回 true. 思路:用正则,参考网上资料和js高级程序设计(5.4RegExp类型). let telephoneCheck = str => /^ ...

  4. [Advanced Algorithm] - Validate US Telephone Numbers

    题目 如果传入字符串是一个有效的美国电话号码,则返回 true. 用户可以在表单中填入一个任意有效美国电话号码. 下面是一些有效号码的例子(还有下面测试时用到的一些变体写法): 555-555-555 ...

  5. Educational Codeforces Round 63 (Rated for Div. 2) B. Game with Telephone Numbers 博弈思维+模拟+贪心思维

    题意:博弈题面  给出一个数字序列 (>=11)  有两个人任意删除数字 直到 数字只剩下11位 如果删除后的数字串开头是8那么就是第一个赢 否则就是第二个人赢 第一个人先手  数字序列一定是奇 ...

  6. FreeCodeCamp 高级算法(个人向)

    freecodecamp 高级算法地址戳这里. freecodecamp的初级和中级算法,基本给个思路就能完成,而高级算法稍微麻烦了一点,所以我会把自己的解答思路写清楚,如果有错误或者更好的解法,欢迎 ...

  7. RFC3261--sip

    本文转载自 http://www.ietf.org/rfc/rfc3261.txt 中文翻译可参考 http://wenku.baidu.com/view/3e59517b1711cc7931b716 ...

  8. Cryptographic method and system

    The present invention relates to the field of security of electronic data and/or communications. In ...

  9. 很多人很想知道怎么扫一扫二维码就能打开网站,就能添加联系人,就能链接wifi,今天说下这些格式,明天做个demo

    有些功能部分手机不能使用,网站,通讯录,wifi基本上每个手机都可以使用. 在看之前你可以扫一扫下面几个二维码先看看效果: 1.二维码生成 网址 (URL) 包含网址的 二维码生成 是大家平时最常接触 ...

随机推荐

  1. linux配置Jdk1.8

    Jdk1.8:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html cd /usr/ ...

  2. (ccf模拟)201709-2公共钥匙盒

    #include <iostream> #include<string> #include <algorithm> #include<sstream> ...

  3. 第三次训练 密码acmore

    网站:CSUST7月23号 A题:大意是:一个N多边形,用红,绿,蓝三色给定点上色,要求划分成顶点颜色不同的三角形. 解析: 这道题是黑书上分治法的例题,还是比较巧的. 首先很容易发现当某种颜色的点只 ...

  4. CvsHelper 使用指南

    用于读取和写入CSV文件的.NET库. 非常快速,灵活和易于使用. 支持读写自定义类对象. 入门 要安装CsvHelper,请从包管理器控制台运行以下操作. Install-Package CsvHe ...

  5. SQL Server中如何设置对列的权限

    一.方式一:使用视图 将需要限制用户只能看到特定的几个列.设置成一个视图,然后对这个视图进行权限控制 二.方式二:使用GRANT语句 1.授予相关列的查询权限(SELECT) 在数据库db1中,登录名 ...

  6. Maven学习--------基础2

    继续学习Maven. 4.2 变量 1) 问:怎样使用变量替换?项目中的某个配置文件比方jdbc.properties使用了一些pom中的变量,怎样在公布中使用包括真实内容的终于结果文件? 答:使用资 ...

  7. mac 下作流程图工具omnigraffle

    omnigraffle:http://www.uzzf.com/soft/91710.html 含盖激活码: Name: mojado Serial: JYFE-JRJN-GSOT-GRAG-EVJI ...

  8. 【cl】java变量

    知识点一: 变量:有声明,有初始化! 变量作用域:变量在声明的地方开始,到块结束(其中一对{}叫块) 变量不能重复声明(声明=定义):在同一个作用域中不能重复声明变量! 在作用域中如果已经有变量了,就 ...

  9. 使用java -jar运行jar包

    使用java -jar运行jar包 摘要 其实不难,网上搜了不少,但是讲不全,或者讲得不少,有的细节却漏掉了, 在此,我想将详细点 java -jar 1.其实命令比较简单:进入相应的目录后,执行ja ...

  10. QString够绕的,分为存储(编译器)和解码(运行期),还有VS编译器的自作主张,还有QT5的变化

    多读几篇,每篇取几句精华加深我对QString的理解. ------------------------------------------------------------------ QStri ...