站長資訊網
        最全最豐富的資訊網站

        PHP POSIX正則表達式

        1 基礎知識

        正則表達式是一種描述一段文本模式的方法。到目前為止,我們前面所用到過的精確(文字)匹配也是一種正則表達式。例如,前面我們曾搜索過正則表達式的術語,像"shop"和"delivery"。

        在PHP中,匹配正則表達式更有點像strstr()匹配,而不像相等比較,因為是在一個字符串的某個位置(如果不指明則可能在字符串中的任何位置)匹配另一個字符串。例如,字符串"shop"匹配正則表達式"shop"。它也可以匹配正則表達式"h"、"ho",等。

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

        2 字符集和類

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

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

        .at

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

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

        [a-z]at

        任何包含在方括號([])中的內容都是一個字符類——一個被匹配字符所屬的字符集合。請注意,方括號中的表達式只匹配一個字符。

        我們可以列出一個集合,例如:

        [aeiou]

        可以用來表示元音子母。

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

        [a-zA-Z]

        這個范圍集代表任何的大小寫字母。

        此外,還可以用集合來指明字符不屬于某個集。例如:

        [^a-z]

        可以用來匹配任何不在a和z之間的字符。當把脫字符號(^)包括在方括號里面時,表示否。當該符號用在方括號的外面,則表示另外一個意思,我們稍后將詳細介紹。

        3 重復

        通常,讀者會希望指明某個字符串或字符類將不止一次地出現。可以在正則表達式中使用兩個特殊字符代替。符號“*”表示這個模式可以被重復0次或

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 国内精品久久久久伊人av| 久久精品www人人爽人人| 精品一区二区三区无码免费视频 | 国产精品亚洲欧美大片在线看 | 久久久久久噜噜精品免费直播| 大桥未久在线精品视频在线| 日韩精品无码一区二区三区免费| 精品久久久久久无码中文野结衣 | 国产精品久久国产精麻豆99网站| 亚洲国产精品无码久久| 日本精品一区二区三区在线视频 | 成人精品一区二区三区在线观看| 国产夫妇精品自在线| 久久久99精品一区二区| 2021国产成人精品久久| 国产精品日韩AV在线播放| 最新在线精品国自av| 麻豆国产高清精品国在线| 国产VA免费精品高清在线| 欧美精品在线一区二区三区| 99久久人妻无码精品系列| 亚洲av无码乱码国产精品| 亚洲欧美精品午睡沙发| 日韩精品中文字幕第2页| 久久久久99精品成人片| 精品露脸国产偷人在视频| 国产午夜精品一区二区三区不卡 | 国产精品免费一区二区三区| 777欧美午夜精品影院| 久久er国产精品免费观看2| 国产精品你懂的| 精品国产欧美一区二区| 国产精品污视频| 热久久这里只有精品| 国产精品久久久天天影视| 久久99精品久久久久久| 亚洲国产成人久久精品动漫| 999精品色在线播放| 国产精品va在线观看无码| 国产精品无码久久四虎| 国产精品伊人久久伊人电影|