搜索到所有匹配,然後替換成想要的字符串並返回
例:
<?php
header("content-type: text/html;charset=utf-8");
$str = preg_replace('/php[1-6]/', 'python','php4, this is php5');
echo $str; //輸出:python, this is python
?>
搜索數組中所有元素,返回由與某個模式匹配的所有元素組成的數組。
例:
<?php
header("content-type: text/html;charset=utf-8");
$arr = array("php","asp","jsp","python","java");
print_r(preg_grep('/p$/',$arr));
?>
在字符串中搜索模式,如果存在,返回真,否則返回假。
例:
<?php
header("content-type: text/html;charset=utf-8");
echo preg_match("/php[1-6]/","php5");
?>
以不區分大小寫的形式將字符串分割為不同的元素,返回一個一維數組。
<?php
header("content-type: text/html;charset=utf-8");
//[.@]按.或@分割,[]裡的內容是“或”的關系;
//如果沒有[],表示需要同時滿足,即.和@相鄰,.@
$arr = preg_split('/[.@]/','[email protected]');
print_r($arr);
echo '<br />';
foreach($arr as $key=>$val){
echo $val.'--';
}
?>
<?php
header("content-type: text/html;charset=utf-8");
//$mode = '/(用戶名)@(網址).(域名)/';
//用戶名:長度大於2,小於255,可包含字母,數字,下劃線,小數點(需要轉義一下)
//$mode = '/([\w\.]{2,255})@(網址).(域名)/';
//網址:長度大於1,小於255,可包含字母,數字,下劃線,減號-(-也需要轉義)
$mode = '/([\w\.]{2,255})@([\w\-]{1,255}).([a-zA-Z]{2,4})/';
$string = '[email protected]';
if(preg_match($mode,$string)){
echo '合法郵件地址';
}else{
echo '不合法郵件地址';
}
?>
在字符串中匹配模式的所有出現,然後將匹配到的結果存入一個二維數組中。
例:
<?php
header("content-type: text/html;charset=utf-8");
preg_match_all('/php[1-6]/','php5aaaphp6aaaphp4',$out);
print_r($out);
?>
在每個對於正則表達式語法而言有特殊含義的字符前插入一個反斜線,這些特殊字符包括:
$, ^, *, (), +, =, {}, [], |, \\, :, <>
例:
<?php
header("content-type: text/html;charset=utf-8");
echo preg_quote('I have $100');
?>
URL: http://www.bianceng.cn/webkf/PHP/201702/50545.htm