PHP中嵌入正規表示式常用的函式

2022-07-23 03:27:12 字數 2462 閱讀 1301

php中嵌入正規表示式常用的函式有四個:

1、preg_match() :preg_match() 函式用於進行正規表示式匹配,成功返回 1 ,否則返回 0 。

語法:int preg_match( string pattern, string subject [, array matches ] )

引數說明:

引數說明

pattern

正規表示式

subject

需要匹配檢索的物件

matches

可選,儲存匹配結果的陣列, $matches[0] 將包含與整個模式匹配的文字,$matches[1] 將包含與第乙個捕獲的括號中的子模式所匹配的文字,以此類推

例子 1 :

<?php

if(preg_match("/php/i", "php is the web scripting language of choice.", $matches))

else

?>

瀏覽器輸出:

a match was found: php
// 從 url 中取得主機名

$host = $matches[2]; // 從主機名中取得後面兩段

preg_match("/[^./]+.[^./]+$/", $host, $matches);

echo "網域名稱為:";

?>

瀏覽器輸出:

網域名稱為:5idev.com
2、preg_match_all():preg_match_all() 函式用於進行正規表示式全域性匹配,成功返回整個模式匹配的次數(可能為零),如果出錯返回 false 。

語法:int preg_match_all( string pattern, string subject, array matches [, int flags ] )

引數說明:

引數說明

pattern

正規表示式

subject

需要匹配檢索的物件

matches

儲存匹配結果的陣列

flags

可選,指定匹配結果放入 matches 中的順序,可供選擇的標記有:

preg_pattern_order:預設,對結果排序使 $matches[0] 為全部模式匹配的陣列,$matches[1] 為第乙個括號中的子模式所匹配的字串組成的陣列,以此類推

preg_set_order:對結果排序使 $matches[0] 為第一組匹配項的陣列,$matches[1] 為第二組匹配項的陣列,以此類推

preg_offset_capture:如果設定本標記,對每個出現的匹配結果也同時返回其附屬的字串偏移量

下面的例子演示了將文字中所有

標籤內的關鍵字(php)顯示為紅色。

<?php 

$str = "學習php是一件快樂的事。

所有的phper需要共同努力!
";

$kw = "php"; preg_match_all('/

([ss]*?)
/',$str,$mat);

for($i=0;$i'.$kw.'', $mat[0][$i]);

$str = str_replace($mat[1][$i], $mat[0][$i], $str);

} echo $str;

?>3、preg_replace():字串比對解析並取代。語法: mixed preg_replace(mixed pattern, mixed replacement, mixed subject);

返回值: 混合型別資料

內容說明: 本函式以 pattern 的規則來解析比對字串 subject,欲取而代之的字串為引數 replacement。返回值為混合型別資料,為取代後的字串結果。

範例:下例返回值為 $startdate = 6/19/1969

$patterns = array("/(19|20\d)-(\d)-(\d)/", "/^\s*\s*=/");

$replace = array("\\3/\\4/\\1", "$\\1 =");

print preg_replace($patterns, $replace, " = 1969-6-19");4、preg_split():將字串依指定的規則切開。語法: array preg_split(string pattern, string subject, int [limit]);

返回值: 陣列

內容說明: 本函式可將字串依指定的規則分開。切開後的返回值為陣列變數。引數 pattern 為指定的規則字串、引數 subject 則為待處理的字串、引數 limit 可省略,表示欲處理的最多合乎值。

正規表示式 常用正規表示式

一 校驗數字的表示式 1 數字 0 9 2 n位的數字 d 3 至少n位的數字 d 4 m n位的數字 d 5 零和非零開頭的數字 0 1 9 0 9 6 非零開頭的最多帶兩位小數的數字 1 9 0 9 0 9 7 帶1 2位小數的正數或負數 d d 8 正數 負數 和小數 d d 9 有兩位小數的...

正規表示式 常用正規表示式

網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 4 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 或者 1 3...

正規表示式常用

正規表示式的介紹 1 資料型別 基本資料型別 number string boolean null undefined 複雜資料型別 array function object math date regexp正規表示式 string number boolean 2 regular express...