正則表達式 php
描述複雜規則的語法 正則表達式
做用:分割、匹配、查找、替換 函數
可完成的工做:數據驗證(手機號碼格式、日期格式、郵箱格式)、採集程序等。 spa
//php正則函數:
//preg_match perl語言基礎
//ereg正則 POSIX(Unix、Script)基礎
=====基本元素=====
簡單原子匹配
//匹配的內容要放在"//"結束符號中
//匹配字符
$mode = '/abc/'; //表達式
$str = 'abcfasdfaabc'; //匹配內容
//匹配數字
$mode = '/12/';
$str = 2234234121245234;
//原括號
$mode = '/(12)/';
$str = 2234234121245234;
//原子表 以中括號爲基礎,即[],有一個匹配成功則表示成功
$mode = '/[98]/';
$str = 'dfasjhdfasj9fasfasjdf8h'; //匹配內容
//結果:Array ( [0] => 9 ) 9,//9和8當中有一個匹配成功,表示成功
$mode = '/[^98]/'; //9和8當中有一個匹配成功,表示成功
$str = 'dfasjhdfasj9fasfasjdf8h'; //匹配內容
//結果:Array ( [0] => d ) d,不包含9和8
//以上爲數字例子,替換成字母同樣的效果,在這裏就不展現了
轉義縮寫 $str = 'fasdfasfa232dfsdg56daf8da6'; //匹配數字,原子表,等價於[0123456789] $mode = '/[0-9]/'; //切換成轉義縮寫 $mode = '/\d/'; //結果Array ( [0] => 2 ) 2 $mode = '/[^0-9]/'; //等價於/\D/ 除數字之外 //print : Array ( [0] => f ) f //其餘轉義,用法同樣,不作展現 // \w [a-zA-Z] 全部英文字母 // \W [^a-zA-Z] 全部英文字母除外 // \s [\r\n\f] 回車,換行,分頁 if(preg_match($mode , $str , $arr)) { print_r($arr); echo $arr[0]; } else { echo 'no'; }