引言: 在寫處理字串的程式或網頁時,常常會有尋找符合某些複雜規則的字串
的需要。正規表示式就是用來描述這些規則的語法。
例:在判斷使用者郵件地址格式、手機號碼格式或擷取別人網頁內容時.
php也常用到正規表示式 php有兩個常用的正規表示式函數:preg_match和ereg。
我今天剛看了preg_match.它的具體寫法是preg_match(mode,string subject,array matches);
以下是我寫的一個example.
複製代碼 代碼如下:
$str="sssjj88d";//符合內容
echo "
";
if(preg_match($mode,$str,$arr)){ //符合函數
echo "匹配成功".$arr[0];//$arr[0]:匹配結果集的第一個值
}
else{
echo "匹配失敗";
}
結果:
結果:
式(regular expression)"元字符":
*匹配前一個內容的0次或多次,即前一個內容任意都匹配
.匹配內容的0次1次或多次,但不包含回車換行
+ 符合前一個內容的1次或多次(除了空)。
| 選擇符合類似PHP中的| (因為這個運算符合是弱型別導致前面最整體比對)
^ 符合字串首部內容
$ 符合字串尾部內容
{a,b},表示符合前一個內容的次數,這個表示次數從a到b之間。
( ) 合併整體匹配,並放入內存,可使用1 2…依序獲取
以下是我用php寫的一個example:
複製代碼 代碼如下:
$mode="/d{2, 4}(.*)d{1,2}\1d{1,2}/";//匹配模組一般寫得越簡單越好
//$mode="/2009(.*)9\1( 10)/";
$str="2011/9/10";
if(preg_match($mode,$str,$arr)){
echo "配對成功"."
".$arr[0]."教師節快樂";
}
else{
echo "配對失敗";
}
?>