PHP 字串比對函數與應用

PHP 字串比對可以用 preg_match 函數來處理,優點是不用寫正規表示也能從字串中做特定字串的比對,這也要拜 PHP 社群的努力,preg_match 這個函數非常好用,簡單來說就只要把要被檢查的字串與要找的字串填入 preg_match 函數的參數中,讓函數自己去比對,如果有相符合的就回傳一個數字 1,如果沒有相符合的比對結果就回傳 FALSE,很簡單吧!?我們來看看這個 PHP 的 preg_match 函數基本語法要怎麼寫。

PHP 的 preg_match 函數語法
int preg_match ( string $pattern , string $subject [, array &$matches [, int $flags = 0 [, int $offset = 0 ]]] )
看起來是不是有點複雜?不過沒關係,基本的使用僅會用到前面 2~3 個參數,第一個參數 $pattern 是要找尋的結果,第二個參數 $subject 就是原始字串,光這兩個參數就足以使用 preg_match 函數的比對功能,preg_match 函數會在 $subject 中比對是否有與 $pattern 匹配的結果,如果有的話就回傳數字 1,如果沒有的話就回傳 FALSE,第三個參數 $matches 是非必要項目,用來設定將比對結果存在陣列中,有需要再使用即可,如果沒有需要就空著免填,來看看如何套用套範例中吧!

利用 preg_match 函數進行 PHP 字串比對的範例

原始碼:在新視窗開起範例程式碼文字版
範例的比對結果
有相符合的結果
其實這個範例相當簡單,我們先準備了一個 $subject 的字串,然後再準備一個 $pattern 的比對字串,把這兩個東西都放到 preg_match 函數中,讓函數自己去判斷是否有相符合的結果,最後再用 PHP if else 條件判斷式來過濾結果,如果有匹配的比對結果,就輸出"有相符合的結果",反之則顯示"沒有相符合的結果",這就是一個簡單的 PHP 字串比對的範例,是不是非常簡單呢?

延伸閱讀
分享於 2015-12-06 - 更新於 2017-08-03