您好,登錄后才能下訂單哦!
這篇文章主要介紹php中preg_match會匹配多少次,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
php preg_match()函數會匹配1次。preg_match()函數用于根據正則表達式對字符串進行搜索匹配,可以返回匹配次數;preg_match()的值將是0次(不匹配)或1次,因為它在第一次匹配后將會停止搜索。
本教程操作環境:windows7系統、PHP7.1版、DELL G3電腦
php preg_match()函數會匹配1次。
PHP 中的 preg_match() 函數可以根據正則表達式對字符串進行搜索匹配,函數的語法格式如下:
preg_match($pattern,$subject [, &$matches [, $flags = 0 [, $offset = 0 ]]])
參數說明如下:
$pattern:要搜索的模式,也就是編輯好的正則表達式;
$subject:要搜索的字符串;
$matches:可選參數(數組類型),如果提供了 $matches,它將被填充為搜索結果。 $matches[0] 包含完整模式匹配到的文本, $matches[1] 包含第一個捕獲子組匹配到的文本,以此類推;
$flags:可選參數,$flags 可以被設置為 PREG_OFFSET_CAPTURE,如果傳遞了這個標記,對于每一個出現的匹配,返回時都會附加上字符串偏移量(相對于目標字符串的);
$offset:可選參數,用于指定從目標字符串的哪個位置開始搜索(單位是字節)。
preg_match() 函數可以返回 $pattern 的匹配次數,它的值將是 0 次(不匹配)或 1 次,因為 preg_match() 在第一次匹配后將會停止搜索。
示例:使用 preg_match() 函數搜索一個字符串
<?php $subject = "abcdefghijkdef"; $pattern_1 = '/def/'; $num = preg_match($pattern_1, $subject, $matches_1,PREG_OFFSET_CAPTURE,8); echo '<pre>'; var_dump($matches_1); var_dump($num); //匹配次數為1次 $pattern_2 = '/def$/'; $num = preg_match($pattern_2, $subject, $matches_2, PREG_OFFSET_CAPTURE, 3); var_dump($matches_2); ?>
對于第一次匹配,將從字符串的第 8 位搜索與 $pattern_1
匹配的子串,$matches_2
數組中包含匹配得到的子串和其出現在目標字符串中的位置。
注意第二次正則表達式與第一次的正則表達式不同,其中加了一個定位符號$
,表示匹配字符串結尾處的位置。
以上是“php中preg_match會匹配多少次”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。