久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

PHP擴(kuò)展之文本處理(二)——PCRE正則表達(dá)式語法4——Unicode字符屬性

瀏覽:103日期:2022-09-15 18:54:18

自從 PHP 4.4.0 和 5.1.0, 三個額外的轉(zhuǎn)義序列在選用?UTF-8模式時用于匹配通用字符類型。他們是:

p{xx}一個有屬性 xx 的字符P{xx}一個沒有屬性 xx 的字符X一個擴(kuò)展的 Unicode 字符

上面?xx?代表的屬性名用于限制 Unicode 通常的類別屬性。 每個字符都有一個這樣的確定的屬性,通過兩個縮寫的字母指定。 為了與 perl 兼容, 可以在左花括號 { 后面增加 ^ 表示取反。比如:?p{^Lu}?就等同于?P{Lu}。

如果通過?p?或?P?僅指定了一個字母,它包含所有以這個字母開頭的屬性。 在這種情況下,花括號的轉(zhuǎn)義序列是可選的。

p{L}pL

指定大小寫不敏感匹配對這些轉(zhuǎn)義序列不會產(chǎn)生影響,比如,?p{Lu}?始終匹配大寫字母。

Unicode 字符集在具體文字中定義。使用文字名可以匹配這些字符集中的一個字符。例如:

p{Greek}P{Han}

不在確定文字中的則被集中到?Common。

X?轉(zhuǎn)義匹配任意數(shù)量的 Unicode 字符。?X?等價于?(?>PMpM*)

也就是說,它匹配一個沒有 ”mark” 屬性的字符,緊接著任意多個由 ”mark” 屬性的字符。 并將這個序列認(rèn)為是一個原子組(詳見下文)。 典型的有 ”mark” 屬性的字符是影響到前面的字符的重音符。

用 Unicode 屬性來匹配字符并不快, 因?yàn)?PCRE 需要去搜索一個包含超過 15000 字符的數(shù)據(jù)結(jié)構(gòu)。 這就是為什么在 PCRE中 要使用傳統(tǒng)的轉(zhuǎn)義序列d、?w?而不使用 Unicode 屬性的原因。

標(biāo)簽: PHP
相關(guān)文章:
主站蜘蛛池模板: 聊城市| 闽侯县| 遂平县| 琼海市| 凤凰县| 通山县| 谢通门县| 泌阳县| 广河县| 万全县| 涟水县| 沁源县| 望谟县| 黎平县| 外汇| 龙口市| 台山市| 仁布县| 泗水县| 唐河县| 离岛区| 庄浪县| 介休市| 南川市| 宝兴县| 郯城县| 洪泽县| 云梦县| 赤城县| 民乐县| 新乐市| 秀山| 报价| 城口县| 田林县| 建德市| 图们市| 石城县| 台北县| 金沙县| 德昌县|