preg_match
是 PHP 中用于執行正則表達式匹配的函數。它的基本語法如下:
int preg_match ( string $pattern , string $subject [, array &$matches [, int $flags = 0 [, int $offset = 0 ]]] )
參數說明:
$pattern
:正則表達式模式字符串。$subject
:要進行匹配的目標字符串。$matches
:(可選)用于存儲匹配結果的數組。$flags
:(可選)標志位,用于控制正則表達式的匹配行為。$offset
:(可選)開始搜索的位置。正則表達式模式字符串可以包含各種元字符和量詞,例如:
\d
:匹配一個數字字符(0-9)。\w
:匹配一個單詞字符(字母、數字或下劃線)。.
:匹配任意單個字符(除了換行符)。*
:匹配前面的子表達式零次或多次。+
:匹配前面的子表達式一次或多次。?
:匹配前面的子表達式零次或一次。{n}
:匹配前面的子表達式恰好 n 次。{n,}
:匹配前面的子表達式至少 n 次。{n,m}
:匹配前面的子表達式至少 n 次,但不超過 m 次。^
:匹配輸入字符串的開始位置。$
:匹配輸入字符串的結束位置。|
:表示或(OR),用于匹配多個選擇。[abc]
:匹配方括號內的任意一個字符(a、b 或 c)。[^abc]
:匹配方括號外的任意一個字符。\d{3}
:匹配三個連續的數字字符(例如:123)。以下是一個簡單的示例,用于檢查字符串中是否包含數字:
$pattern = '/\d/';
$subject = 'Hello, I have 42 apples.';
$matches = [];
if (preg_match($pattern, $subject, $matches)) {
echo 'The string contains a number: ' . $matches[0]; // 輸出:The string contains a number: 4
} else {
echo 'The string does not contain a number.';
}