正则的初级使用

  1 <?php
  2 /***正则表达式的用法*******
  3 ****定义的字符串和规则是否匹配*******
  4 ****authour:意灵魔法馆********
  5 */
  6 //匹配ip地址
  7 //$pattern='/(?:(?:\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.){3}(?:\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])$/';
  8 
  9 //$str='248.24.45.178';
 10 
 11 //反向引用
 12 //$pattern='/([a-zA-Z])\1+/';
 13 //$str='ABBBBBB';
 14 
 15 //?模式修订符
 16 //$pattern='/tang((?i)deng)/';
 17 //$str='tangDEnG';
 18 
 19 //前瞻积极断言(?=)
 20 //$pattern='/tan(?=deng)/i';
 21 //$str="tanDeng";
 22 
 23 
 24 //前瞻消极断言(?!)
 25 //$pattern='/tan(?!deng)/i';
 26 //$str="tanShuai";
 27 
 28 
 29 //后瞻积极断言(?<=)
 30 //$pattern='/(?<=tang)dengshuai/i';
 31 //$str='Tangdengshuai';
 32 
 33 //后瞻消极断言(?<!)
 34 //$pattern='/(?<!tang)Dengshuai/i';
 35 //$str='zhangdengshuai';
 36 
 37 //preg_match 匹配一次一旦匹配成功,则不在进行匹配直接返回
 38 //$pattern='/\w+/';
 39 //$str='aa bb cc';  //aa 
 40 //$result=preg_match($pattern,$str,$value);
 41 //echo $result;
 42 //echo "<pre>";
 43 //var_dump($value);
 44 
 45 
 46 //preg_match_all 匹配所有(多次)返回多维(二维)数组 通过这个可以抓取网页数据  
 47 //$pattern='/\w(\w)(\w)/';
 48 //$str='aTcd aH32g23cd a23g32bcd';  //aa bb cc 
 49 //$result=preg_match_all($pattern,$str,$value);
 50 //echo $result;
 51 //echo "<pre>";
 52 //var_dump($value);
 53 
 54 ////ex
 55 //$file='./test.html';
 56 //
 57 //$str=file_get_contents($file);
 58 //
 59 ////定义规则
 60 //$pattern='/<a [^>]*href=[\'"]?(.*?)[\'"][^>]*>/';
 61 //
 62 //$result=preg_match_all($pattern,$str,$value_list);
 63 //
 64 //echo "<pre>";    
 65 //var_dump($value_list[1]);
 66 
 67 //preg_replace()替换
 68 //$model_name='TopicQuesion';
 69 //$pattern='/(?<=[a-z])([A-Z])/';
 70 //$result=preg_replace($pattern,'_$1',$model_name);
 71 //echo $result;
 72 
 73 //去重复
 74 //$str='hello';//helo;
 75 //
 76 //$pattern='/(\w)\1+/';
 77 //
 78 ////$result=preg_match($pattern,$str,$value);
 79 //$result=preg_replace($pattern,'$1',$str);
 80 //echo $result;
 81 //echo "<pre>";
 82 //var_dump($value);
 83 
 84 //preg_split执行一个正则表达式的分隔
 85     
 86 //$str='hello twewgt,,,t4tt|||432t';
 87 //
 88 //$pattern='/(\W)+/';//匹配那个非字母数字下划线
 89 ////通过这些非字母数字下划线开头分隔字符
 90 //$result=preg_split($pattern,$str);
 91 //echo "<pre>";
 92 //var_dump($result);
 93 
 94 //模式修订符
 95 //匹配中文
 96 //$str='hhhhh,你好,意灵魔法馆';
 97 //$pattern='/[\x{4e00}-\x{9ef5}]+/u';
 98 //$pattern='/(.+)/';
 99 //$result=preg_match($pattern,$str,$value);
100 //echo "<pre>";
101 //var_dump($value);
102 //m匹配多行,每行都出现行首和行尾
103 //$lines="tang3t33t\ntangt432t\ntang2t23";
104 //
105 //$pattern='/^tang\w*?/m';
106 //
107 //$result=preg_match_all($pattern,$lines,$value);
108 //
109 //echo "<pre>";
110 //var_dump($value);//tang tang tang
111 
112 ?>

  

posted @ 2016-05-23 00:57  意灵魔法馆  阅读(148)  评论(0编辑  收藏  举报