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. 利用echarts做图表统计

    以项目中的扇形统计图为例: 首先,第一步: 引入外部echarts.js文件 其次,第二步: HTML代码块 <div class="count-body-con count-tj&q ...

  2. orcale 多表连接

    多表连接:

  3. MySQL架构优化实战系列3:定时计划任务与表分区

    原创 2016-07-08 汤抗 DBAplus社群 一 定时计划任务 1.概论   mysql计划任务可以定时更新数据库表或者做大文件的汇总表.   2.配置 开启计划任务 SHOW VARIABL ...

  4. oracle批量更新

    oracle批量更新 学习了:http://blog.csdn.net/zkcharge/article/details/50855755 statement.addBatch(); statemen ...

  5. hdu 4586 Play the Dice (概率+等比数列)

    Play the Dice Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others) To ...

  6. 积跬步,聚小流------界面经常使用的jeecms标签

    * JEECMS初印象 第一次接触JEECMS,突然脑海就浮现了一句话"20元建站,立等可取",原来这都是真的... * JEECMS的界面经常使用标签 临时忽略掉环境搭建.栏目配 ...

  7. 关于BeanShell报错提示Error invoking bsh method

    背景:因测试需要打算从外部引用.java和.class文件,奈何报错挥之不去:Error invoking bsh method: eval...... 各种百度取经之后,决定先抛弃引用,试试Bean ...

  8. MVC地区多级联动扩展实现(非递归形式)

    MVC前台界面调用方式如下: @Html.AreaDropDownList(, string.Empty) 参数说明: 第一个参数控件的名称: 第二个参数选中的地区编码: 第三个参数地区层级: 第四个 ...

  9. 有关java.util.ConcurrentModificationException

    有关java.util.ConcurrentModificationException java doc对这个类的定义: This exception may be thrown by methods ...

  10. JPA相关注解

    JPA注解 一.基本注解 1.表相关   @Entity   仅仅要加了这个注解就具备了表和实体的映射关系,表名就是实体名   @Table(name="表名")    一般和实体 ...