2020年4月2日

    1. php1
    2. <?php
    3. $preg= "/\d/";
    4. $str= "6231585";
    5. if(preg_match($preg,$str,$arr)){
    6. echo"匹配成功";
    7. var_dump($arr);
    8. }else{
    9. echo"匹配失败";
    10. }
    11. echo"<hr>";
    12. $preg= "/a/i";
    13. $str="abcdABCD";
    14. if(preg_match($preg,$str,$arr)){
    15. echo"匹配成功";
    16. var_dump($arr);
    17. }else{
    18. echo"匹配失败";
    19. }
    20. echo"<hr>";
    21. $preg="/^\w+/m";
    22. $str="
    23. AAAAAA
    24. BBBBBB
    25. CCCCC
    26. ";
    27. if(preg_match($preg,$str,$arr)){
    28. echo"匹配成功";
    29. var_dump($arr);
    30. }else{
    31. echo"匹配失败";
    32. }
    33. echo"<hr>";
    34. $preg="/.+/s";
    35. $str="abc
    36. de
    37. fg";
    38. if(preg_match($preg,$str,$arr)){
    39. echo"匹配成功";
    40. var_dump($arr);
    41. }else{
    42. echo"匹配失败";
    43. }
    44. $preg = "/^[^e]+$/";
    45. $str = "adasdada55s2daf56df";
    46. if(preg_match($preg ,$str ,$arr)){
    47. echo"匹配成功";
    48. var_dump($arr);
    49. }else{
    50. echo"匹配失败";
    51. }
    52. php2
    53. <?php
    54. $preg= "/\d/";
    55. $str= "6231585";
    56. if(preg_match($preg,$str,$arr)){
    57. echo"匹配成功";
    58. var_dump($arr);
    59. }else{
    60. echo"匹配失败";
    61. }
    62. echo"<hr>";
    63. $preg= "/a/i";
    64. $str="abcdABCD";
    65. if(preg_match($preg,$str,$arr)){
    66. echo"匹配成功";
    67. var_dump($arr);
    68. }else{
    69. echo"匹配失败";
    70. }
    71. echo"<hr>";
    72. $preg="/^\w+/m";
    73. $str="
    74. AAAAAA
    75. BBBBBB
    76. CCCCC
    77. ";
    78. if(preg_match($preg,$str,$arr)){
    79. echo"匹配成功";
    80. var_dump($arr);
    81. }else{
    82. echo"匹配失败";
    83. }
    84. echo"<hr>";
    85. $preg="/.+/s";
    86. $str="abc
    87. de
    88. fg";
    89. if(preg_match($preg,$str,$arr)){
    90. echo"匹配成功";
    91. var_dump($arr);
    92. }else{
    93. echo"匹配失败";
    94. }
    95. $preg = "/^[^e]+$/";
    96. $str = "adasdada55s2daf56df";
    97. if(preg_match($preg ,$str ,$arr)){
    98. echo"匹配成功";
    99. var_dump($arr);
    100. }else{
    101. echo"匹配失败";
    102. }
    103. php3
    104. <?php
    105. $preg= "/\d/";
    106. $str= "6231585";
    107. if(preg_match($preg,$str,$arr)){
    108. echo"匹配成功";
    109. var_dump($arr);
    110. }else{
    111. echo"匹配失败";
    112. }
    113. echo"<hr>";
    114. $preg= "/a/i";
    115. $str="abcdABCD";
    116. if(preg_match($preg,$str,$arr)){
    117. echo"匹配成功";
    118. var_dump($arr);
    119. }else{
    120. echo"匹配失败";
    121. }
    122. echo"<hr>";
    123. $preg="/^\w+/m";
    124. $str="
    125. AAAAAA
    126. BBBBBB
    127. CCCCC
    128. ";
    129. if(preg_match($preg,$str,$arr)){
    130. echo"匹配成功";
    131. var_dump($arr);
    132. }else{
    133. echo"匹配失败";
    134. }
    135. echo"<hr>";
    136. $preg="/.+/s";
    137. $str="abc
    138. de
    139. fg";
    140. if(preg_match($preg,$str,$arr)){
    141. echo"匹配成功";
    142. var_dump($arr);
    143. }else{
    144. echo"匹配失败";
    145. }
    146. $preg = "/^[^e]+$/";
    147. $str = "adasdada55s2daf56df";
    148. if(preg_match($preg ,$str ,$arr)){
    149. echo"匹配成功";
    150. var_dump($arr);
    151. }else{
    152. echo"匹配失败";
    153. }

    笔记:
    元字符:
    用来编写字符串规则的特殊(意义)字符
    元字符是配合原子使用,原子的运算符

    *匹配0次 1次或多次前面的一个原子
    +匹配1次或多次前面的一个原子
    ?匹配0次或1次前面的一个原子
    | 匹配两个或多个分支选择(或者)
    {n}表示其前面的原子刚好出现n次
    {n,}表示其前面的原子出现不小于n次
    {n,m}表示其前面的原子至少出现n次,最多出现m次
    ^匹配输入字符串的开始位置
    $匹配输入字符串的结束位置
    \b匹配单词便边界
    \B匹配除了单词边界以外部分
    (abcd)匹配其整体作为一个原子,将多个原子视为一个原子

    模式修正符:
    扩充正则表达式的功能
    模式修正符写在定界符之外,并且在最右侧

    i 修正正则表达式不区分大小写 (默认则区分)
    m 修正符号(^ $)默认认为所有的文本都是在一行,把换的多行早正则中识别为多行而不是单行
    s 修正正则表达式中的.可以匹配换行符号;(默认情况下不允许匹配换行符)
    + 表示匹配其前面的原子1次或多次
    . 表示匹配任意的内容,但不包含换行符
    bool preg_match(正则,字符串,$变量) 运行正则匹配,只会匹配一个内容

    ()中匹配的内容可以单独的生成结果
    $preg =”/^12(\d)12$/“;
    $str=”12512”;
    子组()可以引用前面已存在的;使用\1双斜线加数字可以引用前面已写好的圆括号
    1表示括号的顺序,从前往后数从1开始

    字符簇 cu
    【】用来定义一个原子的范围,整个中括号认为一个原子
    \d 0-9
    \w 0-9 a-z A-Z

    作业 - 图1