欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP正則表達(dá)式之定界符和原子介紹

 更新時(shí)間:2012年10月05日 16:59:33   作者:  
本節(jié)內(nèi)容我們將介紹PHP中正則 表達(dá)式的基礎(chǔ)語(yǔ)法:定界符和原子。內(nèi)容包含了定界符的定義以及原子的定義和構(gòu)成等等
本節(jié)內(nèi)容我們將介紹PHP中正則 表達(dá)式的基礎(chǔ)語(yǔ)法:定界符和原子。內(nèi)容包含了定界符的定義以及原子的定義和構(gòu)成等等。其中原子的構(gòu)成十分靈活,以便滿足我們對(duì)處理字符串的需求。在這之 前,我們需要先了解一個(gè)正則表達(dá)式處理函數(shù)preg_match()來進(jìn)行測(cè)試,以方便我們教程示例的進(jìn)行。

先來看一下正則表達(dá)式的定界符、正則表達(dá)式的構(gòu)成以及preg_match()函數(shù):

1,正則表達(dá)式的定界符。

除了字母、數(shù)字和反斜線\以外的任何字符都可以為定界符號(hào),比如 | |、//、{}、!!等等,但是需要注意,如果沒有特殊需要,我們都使用正斜線//作為正則表達(dá)式的定界符號(hào)。

2,正則表達(dá)式的構(gòu)成。

我們看一下這個(gè)公式:/原子和元字符/模式修正符

也就是說,正則表達(dá)式的原子和元字符都放在定界符之間,而模式修正符放在定界符之外。

3,preg_match()函數(shù)

我們會(huì)在后面進(jìn)行詳細(xì)解釋,這里只是為了幫助測(cè)試,其返回一個(gè)布爾值,表示是否成功匹配。

了解完以上簡(jiǎn)單的內(nèi)容,讓我們進(jìn)入正題。

正則表達(dá)式中的原子

什么是原子?原子是正則表達(dá)式的最基本組成單位,而且必須至少要包含一個(gè)原子。只要一個(gè)正則表達(dá)式可以單獨(dú)使用的字符,就是原子。

這個(gè)概念可能看起來很模糊,沒關(guān)系,下面我們來介紹一下正則表達(dá)式中原子的構(gòu)成方式。

原子構(gòu)成方式
1,所有打印(所有可以在屏幕上輸出的字符串)和非打印字符(看不到的,比如空格,換行符等等)

2,如果所有有意義的字符,想做為原子使用,統(tǒng)統(tǒng)使用“\”轉(zhuǎn)義字符進(jìn)行轉(zhuǎn)義即可。如:\. \* \+ \? \( \<\>。

注意:" \ "轉(zhuǎn)義字符可以將有意義的字符轉(zhuǎn)成沒意義的字符,還可以將沒意義的字符轉(zhuǎn)為有意義的字符。如:\d表示任意一個(gè)十進(jìn)制的數(shù)字。

3,在正則表達(dá)式中可以直接使用一些系統(tǒng)提供的代表范圍的原子,如下面的表格所示:

代表范圍的原子  說明  自定義原子表示法
 \d  表示任意一個(gè)十進(jìn)制的數(shù)字  [0-9]
 \D  表示任意一個(gè)除數(shù)字這外的字符  [^0-9]
 \s  表示任意一個(gè)空白字符,空格、\n\r\t\f  [\n\r\t\f ]
 \S  表示任意一個(gè)非空白  [^\n\r\t\f ]
 \w  表示任意一個(gè)字 a-zA-Z0-9_  [a-zA-Z0-9_]
 \W  表示任意一個(gè)非字,除了a-zA-Z0-9_以外的任意一個(gè)字符  [^a-zA-Z0-9_]

4,自定義原子表(使用方括號(hào)[]),可以匹配方括號(hào)中的任何1個(gè)原子。

在上面的表格中我們已經(jīng)將系統(tǒng)提供的范圍原子使用自定義的方式作了等價(jià)轉(zhuǎn)換。由于系統(tǒng)不可能提供所有我需要的原子,所以自定義原子表就顯得十分必要了,比如我們想要匹配字母或者數(shù)字,就需要將原子寫成[a-zA-Z0-9]。

這里需要注意:

A,符號(hào)“-”表示范圍,如[a-z]表示小寫字母a到z,但千萬(wàn)不要寫成[a-9]這種形式!

B, 符號(hào)“^”表示取反,一定要放在方括號(hào)的開頭,比如我們想要匹配非數(shù)字,則原子為[^0-9]。

下面我們來看一下正則表達(dá)式原子的使用實(shí)例,代碼如下:

復(fù)制代碼 代碼如下:

<?php
$pattern = '/\d/';//數(shù)字原子表,也就是正則表達(dá)式的模式
$string = 'dsadsadsa';//需要匹配的字符串
if(preg_match($pattern, $string)){
echo "正則表達(dá)式<strong>{$pattern} </strong>和字符串 <strong>{$string}</strong> 匹配成功";
}else{
echo "<span style="color: red;">正則表達(dá)式{$pattern}和字符串{$string}匹配失敗</span>";
}
?>


注意:自定義原子表中的原子有一個(gè)被字符串匹配上,就匹配成功了。而去掉自定義原子表的方括號(hào),則表示匹配整個(gè)字符串。如'/abc/'表示字符串中必須有abc這個(gè)子串才能被匹配,而'/[abc]/'表示字符串中只要包含a、b和c中的任何一個(gè)字符,即被匹配。

大家可以將上面實(shí)例中的模式進(jìn)行修改(也就是正則表達(dá)式的模式變量$pattern),進(jìn)而對(duì)我們本節(jié)所講的正則表達(dá)式的原子進(jìn)行驗(yàn)證。

本節(jié)關(guān)于正則表達(dá)式的定界符和原子就介紹完了,相信在練習(xí)的基礎(chǔ)上,你已經(jīng)會(huì)使用正則表達(dá)式的原子了。下節(jié)我們將介紹php正則表達(dá)式中的元字符,不要錯(cuò)過啊。

相關(guān)文章

  • php下用GD生成生成縮略圖的兩個(gè)選擇和區(qū)別

    php下用GD生成生成縮略圖的兩個(gè)選擇和區(qū)別

    php下用GD生成生成縮略圖的兩個(gè)選擇和區(qū)別...
    2007-04-04
  • PHP之uniqid()函數(shù)用法

    PHP之uniqid()函數(shù)用法

    這篇文章主要介紹了PHP中uniqid()函數(shù)的用法,包括了函數(shù)的基本用法與應(yīng)用分析,是非常實(shí)用的技巧,需要的朋友可以參考下
    2014-11-11
  • php常用ODBC函數(shù)集(詳細(xì))

    php常用ODBC函數(shù)集(詳細(xì))

    本篇文章是對(duì)php中的常用ODBC函數(shù)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • php獲得網(wǎng)站訪問統(tǒng)計(jì)信息類Compete API用法實(shí)例

    php獲得網(wǎng)站訪問統(tǒng)計(jì)信息類Compete API用法實(shí)例

    這篇文章主要介紹了php獲得網(wǎng)站訪問統(tǒng)計(jì)信息類Compete API用法,實(shí)例分析了php使用curl獲取Compete統(tǒng)計(jì)網(wǎng)站信息的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-04-04
  • php使用curl詳細(xì)解析及問題匯總

    php使用curl詳細(xì)解析及問題匯總

    CURL是一個(gè)非常強(qiáng)大的開源庫(kù),支持很多協(xié)議,包括HTTP、FTP、TELNET等,我們使用它來發(fā)送HTTP請(qǐng)求。它給我 們帶來的好處是可以通過靈活的選項(xiàng)設(shè)置不同的HTTP協(xié)議參數(shù),并且支持HTTPS。CURL可以根據(jù)URL前綴是“HTTP” 還是“HTTPS”自動(dòng)選擇是否加密發(fā)送內(nèi)容。
    2016-08-08
  • PHP實(shí)現(xiàn)的各種進(jìn)制相互轉(zhuǎn)換功能小工具示例

    PHP實(shí)現(xiàn)的各種進(jìn)制相互轉(zhuǎn)換功能小工具示例

    這篇文章主要介紹了PHP實(shí)現(xiàn)的各種進(jìn)制相互轉(zhuǎn)換功能小工具,涉及php常見的二進(jìn)制、八進(jìn)制、十六進(jìn)制等相互轉(zhuǎn)換操作實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2018-03-03
  • PHP中限制IP段訪問、禁止IP提交表單的代碼

    PHP中限制IP段訪問、禁止IP提交表單的代碼

    最近,小編發(fā)現(xiàn)有一個(gè)云南的網(wǎng)友經(jīng)常在網(wǎng)站發(fā)表一些垃圾信息的評(píng)論,由于使用的事DEDECMS構(gòu)架,系統(tǒng)本身并無(wú)禁止IP功能,每天看到這些垃圾評(píng)論,盡管不多,但是讓人感覺不爽,那么如何來限制呢?
    2011-04-04
  • PHP學(xué)習(xí)筆記之一

    PHP學(xué)習(xí)筆記之一

    本系列適合有其他編程語(yǔ)言經(jīng)驗(yàn)而PHP經(jīng)驗(yàn)為0的人快速參考入門。
    2011-01-01
  • PHP laravel實(shí)現(xiàn)導(dǎo)出PDF功能

    PHP laravel實(shí)現(xiàn)導(dǎo)出PDF功能

    有時(shí)候我們會(huì)需要使用PHP導(dǎo)出pdf。這篇文章主要是記錄一下laravel實(shí)現(xiàn)導(dǎo)出PDF的兩種方式。文中的示例代碼講解詳細(xì),需要的可以參考一下
    2022-10-10
  • 使用session判斷用戶登錄用戶權(quán)限(超簡(jiǎn)單)

    使用session判斷用戶登錄用戶權(quán)限(超簡(jiǎn)單)

    本篇文章是對(duì)session判斷用戶登錄用戶權(quán)限進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06

最新評(píng)論