亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長(zhǎng)資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    PHP POSIX正則表達(dá)式

    1 基礎(chǔ)知識(shí)

    正則表達(dá)式是一種描述一段文本模式的方法。到目前為止,我們前面所用到過(guò)的精確(文字)匹配也是一種正則表達(dá)式。例如,前面我們?cè)阉鬟^(guò)正則表達(dá)式的術(shù)語(yǔ),像"shop"和"delivery"。

    在PHP中,匹配正則表達(dá)式更有點(diǎn)像strstr()匹配,而不像相等比較,因?yàn)槭窃谝粋€(gè)字符串的某個(gè)位置(如果不指明則可能在字符串中的任何位置)匹配另一個(gè)字符串。例如,字符串"shop"匹配正則表達(dá)式"shop"。它也可以匹配正則表達(dá)式"h"、"ho",等。

    除了精確匹配字符外,還可以用特殊字符來(lái)指定表達(dá)式的元意(meta-meaning)。例如,使用特殊字 符,可以指定一個(gè)在字符串開(kāi)始或末尾肯定存在的模式,該模式的某部分可能被重復(fù),或模式中的字符屬于特定的某一類(lèi)型。此外,還可以按特殊字符的出現(xiàn)來(lái)匹 配。接下來(lái),我們將逐個(gè)討論這些變化。

    2 字符集和類(lèi)

    使用字符集可以馬上給出比精確匹配功能還要強(qiáng)大的正則表達(dá)式。字符集可以用于匹配屬于特定類(lèi)型的任何字符;事實(shí)上它們是一種通配符。

    首先,可以用字符作為一個(gè)通配符來(lái)代替除換行符(n)之外的任一個(gè)字符。例如,正則表達(dá)式:

    .at

    可以與"cat"、"sat"和"mat"等進(jìn)行匹配。通常,這種通配符匹配用于操作系統(tǒng)中的文件名匹配。

    但是,使用正則表達(dá)式,可以更具體地指明希望匹配的字符類(lèi)型,而且可以指明字符所屬的一個(gè)集合。在前面的例子中,正則表達(dá)式匹配"cat"和"mat",但也可以匹配"#at"。如果要限定它是a到z之間的字符,就可以像下面這樣指明:

    [a-z]at

    任何包含在方括號(hào)([])中的內(nèi)容都是一個(gè)字符類(lèi)——一個(gè)被匹配字符所屬的字符集合。請(qǐng)注意,方括號(hào)中的表達(dá)式只匹配一個(gè)字符。

    我們可以列出一個(gè)集合,例如:

    [aeiou]

    可以用來(lái)表示元音子母。

    也可以描述一個(gè)范圍,正如前面用連字符那樣,也可以是一個(gè)范圍集:

    [a-zA-Z]

    這個(gè)范圍集代表任何的大小寫(xiě)字母。

    此外,還可以用集合來(lái)指明字符不屬于某個(gè)集。例如:

    [^a-z]

    可以用來(lái)匹配任何不在a和z之間的字符。當(dāng)把脫字符號(hào)(^)包括在方括號(hào)里面時(shí),表示否。當(dāng)該符號(hào)用在方括號(hào)的外面,則表示另外一個(gè)意思,我們稍后將詳細(xì)介紹。

    3 重復(fù)

    通常,讀者會(huì)希望指明某個(gè)字符串或字符類(lèi)將不止一次地出現(xiàn)??梢栽谡齽t表達(dá)式中使用兩個(gè)特殊字符代替。符號(hào)“*”表示這個(gè)模式可以被重復(fù)0次或

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)