国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

php正則表達式之preg_match()用法

2024-09-04 11:47:18
字體:
供稿:網(wǎng)友

利用 preg_match(),我們可以完成字符串的規(guī)則匹配。如果找到一個匹配,preg_match() 函數(shù)返回 1,否則返回 0。還有一個可選的第三參數(shù)可以讓你把匹配的部分存在一個數(shù)組中。在驗證數(shù)據(jù)時這個功能可以變得非常有用。

實例代碼如下:

  1. <?php 
  2. // 模式定界符后面的 "i" 表示不區(qū)分大小寫字母的搜索 
  3. if (preg_match ("/php/i""PHP is the web scripting language of choice.")) { 
  4. print "A match was found."
  5. else { 
  6. print "A match was not found."
  7. ?> 

取得當前時間

實例代碼如下:

  1. <?php 
  2. //需要匹配的字符串。date函數(shù)返回當前時間。 "現(xiàn)在時刻:2012-04-20 07:31 am" 
  3. $content = "現(xiàn)在時刻:".date("Y-m-d h:i a"); 
  4. //匹配日期和時間. 
  5. if (preg_match ("/d{4}-d{2}-d{2} d{2}:d{2} [ap]m/"$content$m)) 
  6. echo "匹配的時間是:" .$m[0]. "n"//"2012-04-20 07:31 am" 
  7. //分別取得日期和時間 
  8. if (preg_match ("/([d-]{10}) ([d:]{5} [ap]m)/"$content$m)) 
  9. echo "當前日期是:" .$m[1]. "n"//"2012-04-20" 
  10. echo "當前時間是:" .$m[2]. "n"//"07:31 am" 
  11. ?> 

這個例子將驗證出此 Email 地址為正確格式。現(xiàn)在讓我們來看看這段正則表達式所代表的各種規(guī)則。

獲取Google首頁title

比如說要獲取google首頁的title內(nèi)容,代碼如下:

實例代碼如下:

  1. <?php 
  2. $str = file_get_contents('http://www.google.com'); 
  3. preg_match('/<title>(.*)</title>/'$str$arr); 
  4. echo $arr[1]; 
  5. ?> 

從網(wǎng)址獲取域名

實例代碼如下:

  1. <?php 
  2. preg_match("/^(http://)?([^/]+)/i""http://www.111cn.net/index.html"$matches); 
  3. $host = $matches[2]; // 從主機名中取得后面兩段 
  4. preg_match("/[^./]+.[^./]+$/"$host$matches); 
  5. echo "domain name is: {$matches[0]}n"
  6. ?> 

preg_match($pattern,$string,$matcher)其中$pattern對應(yīng)的就是/^(http://)?([^/]+)/i,$string 是http://www.php.net/index.html,$match是匹配到的結(jié)果。

如果提供了 matches,則其會被搜索的結(jié)果所填充。$matches[0] 將包含與整個模式匹配的文本,$matches[1] 將包

含與第一個捕獲的括號中的子模式所匹配的文本,以此類推。

$matches[0] 將包含與整個模式匹配的文本。咱們用pring_r打印出來第一個$matches:

實例代碼如下:

  1. Array (  
  2.  [0] => http://www.111cn.net  
  3.  [1] => http://  
  4.  [2] => http://m.survivalescaperooms.com ) 

$matches[0] 將包含與整個模式匹配的文本,$matches[1] 將包含與第一個捕獲的括號中的子模式所匹配的文本。在正則中,()代表模式:匹配 pattern 并獲取這一匹配。所獲取的匹配可以從產(chǎn)生的 Matches 集合得到,在VBScript 中使用 SubMatches 集合,在JScript 中則使用 $0…$9 屬性。就是說數(shù)組中下標為1的值就是正則中/^(http://)?([^/]+)/i第一個()里的值!數(shù)組下標2的值以此類推。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 团风县| 五河县| 马公市| 定襄县| 湖南省| 夏邑县| 大足县| 海盐县| 柏乡县| 青神县| 门头沟区| 保山市| 沁水县| 舞阳县| 新兴县| 安仁县| 监利县| 信丰县| 林甸县| 嵊泗县| 沭阳县| 江永县| 三门县| 长乐市| 班玛县| 岳池县| 图片| 杭锦旗| 寻乌县| 雅江县| 斗六市| 桐乡市| 沽源县| 西和县| 外汇| 嘉黎县| 贵南县| 钟祥市| 九寨沟县| 诸暨市| 昌邑市|