04.正则表达式语法.html 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>Document</title>
  8. <script>
  9. /**
  10. * 创建一个正则表达式检查一个字符串中是否含有aaa
  11. */
  12. // var reg = /aaa/;
  13. // console.log(reg.test("abc"));//false
  14. // console.log(reg.test("aaabc"));//true
  15. // console.log(reg.test("aabac"));//false
  16. /**
  17. * 量词
  18. * -通过量词可以设置一个内容出现的次数
  19. * -量词只对它前边的一个内容起作用
  20. * -{n} 正好出现n次
  21. * -{m,n} 出现m-n次
  22. * -{m,} 出现m次及以上
  23. * - + 至少一个,相当于{1,}
  24. * - * 0个或多个,相当于{0,},也就是有没有都行
  25. * - ? 0个或1个,相当于{0,1}
  26. */
  27. // var reg =/a{3}/;//表示a连续出现3次
  28. // var reg =/ab{3}/;//表示b连续出现3次,相当于abbb
  29. // var reg =/(ab){3}/;//表示ab连续出现3次
  30. // var reg =/ab{1,3}c/;//表示b连续出现1-3次
  31. // console.log(reg.test("abc"));//true
  32. // console.log(reg.test("abbc"));//true
  33. // console.log(reg.test("abbbc"));//true
  34. // console.log(reg.test("abbbbc"));//false
  35. // var reg =/ab{3,}c/;//表示b连续出现3次及以上
  36. // console.log(reg.test("abbc"));//false
  37. // console.log(reg.test("abbbc"));//true
  38. // console.log(reg.test("abbbbc"));//true
  39. // var reg =/ab+c/;//表示b连续出现1次及以上
  40. // console.log(reg.test("abc"));//true
  41. // console.log(reg.test("abbbc"));//true
  42. // var reg =/ab*c/;
  43. // console.log(reg.test("ac"));//true
  44. // console.log(reg.test("abbbc"));//true
  45. // var reg =/ab?c/;
  46. // console.log(reg.test("ac"));//true
  47. // console.log(reg.test("abc"));//true
  48. // console.log(reg.test("abbbc"));//false
  49. /**
  50. * 检查一个字符串中是否以a开头
  51. * ^ 表示开头
  52. * $ 表示结尾
  53. */
  54. // var reg = /^a/; //匹配开头的a
  55. // console.log(reg.test("abc"));//true
  56. // console.log(reg.test("dsabc"));//false
  57. // var reg = /a$/; //匹配结尾的a
  58. // console.log(reg.test("abc"));//false
  59. // console.log(reg.test("dsabca"));//true
  60. /**
  61. * 如果在正则表达式中同时使用^$,则要求字符串必须完全符合正则表达式
  62. */
  63. // var reg = /^a$/; //满足条件的只有a
  64. // console.log(reg.test("abca"));//false
  65. // console.log(reg.test("dsabca"));//false
  66. // console.log(reg.test("a"));//true
  67. // var reg = /^a|a$/; //表示以a开头或者以a结尾
  68. // console.log(reg.test("abc"));//true
  69. // console.log(reg.test("dsabca"));//true
  70. // console.log(reg.test("a"));//true
  71. /**
  72. * 创建一个正则表达式,用来检查一个字符串是否是手机号
  73. * 手机号的规则:
  74. * 共11位
  75. * 1.以1开头
  76. * 2.第二位3-9任意数字
  77. * 3.三位以后任意数字9个
  78. * ^1 [3-9] [0-9]{9}$
  79. */
  80. var phoneStr = "13567894561";
  81. var phoneReg = /^1[3-9][0-9]{9}$/;
  82. console.log(phoneReg.test(phoneStr));
  83. </script>
  84. </head>
  85. <body>
  86. </body>
  87. </html>