现在的位置: 首页学习笔记>正文
PHP正则表达式修饰符
发表于6年前 学习笔记 评论数 2

昨天学到了PHP元字符,今天接下去.学习修饰符.

独家及记忆

  1. <?php   
  2.   
  3. //看这个例子,只是大小写区别返回的却是不相爱,因为不兼容所以不识别,那怎么解决呢?   
  4. $a='/iloveyou/';   
  5. $b='ILOVEYOU';   
  6. if (preg_match($a,$b))   
  7. {   
  8.     echo '相爱';   
  9. }   
  10. else    
  11. {   
  12.     echo '不相爱';   
  13. }   
  14.   
  15. echo '<br />';   
  16.   
  17. $a='/iloveyou/i';   
  18. $b='ILOVEYOU';   
  19. if (preg_match($a,$b))   
  20. {   
  21.     echo '相爱';   
  22. }   
  23. else    
  24. {   
  25.     echo '不相爱';   
  26. }   
  27. //这样就相爱匹配了吧...   
  28. //因为修饰符i可以完成不区分大小写的匹配.   
  29. //额 开个小玩笑,加以理解 下面认真学了.   
  30.   
  31.   
  32.   
  33.   
  34.   
  35.   
  36.   
  37. //在这个加了一个尾行匹配的符号$   
  38. //然后在字符串输入的是多行,看是否能匹配   
  39.   
  40. echo '<br />';   
  41. //$d='/php$/';   
  42. $d='/php$/m';   
  43. $e="sadasdphp\n,phpasdasd";   
  44. if (preg_match($d,$e))   
  45. {   
  46.     echo '匹配';   
  47. }   
  48. else    
  49. {   
  50.     echo '不匹配';   
  51. }   
  52. //输出的结果就是不匹配,   
  53. //因为正则表达式没有识别多行的功能.   
  54. //然后我们在$d='/php$/';加个$d='/php$/m';   
  55. //OK 就会显示匹配了   
  56. //这样就理解了修饰符m就是在匹配首尾的时候可以进行多行识别.   
  57.   
  58.   
  59. echo '<br />';   
  60.   
  61.   
  62. //下面我们在规则加上一个空格,然后看看是否不匹配.   
  63. //$f='/ph p/';   
  64. $f='/ph p/x';   
  65. $g="php";   
  66. if (preg_match($f,$g))   
  67. {   
  68.     echo '匹配';   
  69. }   
  70. else    
  71. {   
  72.     echo '不匹配';   
  73. }   
  74.   
  75. //返回的结果还是不匹配.   
  76. //我们在$f='ph p';加个$f='/ph p/x';   
  77. //这样就能匹配了,   
  78. //这里说明的就是x可以忽略正则表达式的空白.   
  79.   
  80.   
  81.   
  82. echo '<br />';   
  83. //A就是强制从字符串开头匹配.注意这里是大写的A,   
  84. //$p='/ph p/';   
  85. $p='/php/A';   
  86. $q='hhjkhjkhjkphp';   
  87. if (preg_match($p,$q))   
  88. {   
  89.     echo '匹配';   
  90. }   
  91. else    
  92. {   
  93.     echo '不匹配';   
  94. }   
  95.   
  96. //这个结果返回的当然也是不匹配.除非开头是php才会匹配.   
  97.   
  98.   
  99.   
  100. //总结下   
  101. // 修饰符i可以完成不区分大小写的匹配.   
  102. // 修饰符m就是在匹配首尾的时候可以进行多行识别.   
  103. // 修饰符x可以忽略正则表达式的空白   
  104. // 修饰符A就是强制从字符串开头匹配   
×
腾讯微博