久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

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

PHP 正則表達(dá)式函數(shù)庫(kù)(兩套)

在PHP中有兩套正則表達(dá)式函數(shù)庫(kù),兩者功能相似,只是執(zhí)行效率略有差異:
一套是由PCRE(Perl Compatible Regular Expression)庫(kù)提供的。使用“preg_”為前綴命名的函數(shù);
一套由POSIX(Portable Operating System Interface of Unix )擴(kuò)展提供的(PHP默認(rèn))。使用以“ereg_”為前綴命名的函數(shù);
PHP中,正則表達(dá)式有三個(gè)作用:
匹配,也常常用于從字符串中析取信息。
用新文本代替匹配文本。
將一個(gè)字符串拆分為一組更小的信息塊。

一個(gè)正則表達(dá)式中至少包含一個(gè)原子。
原子(普通字符,如英文字符)
元字符(有特殊功用的字符)
模式修正字符(對(duì)正則表達(dá)式語(yǔ)義的修正)

原子(Atom)
單個(gè)字符、數(shù)字,如a~z,A~Z,0~9。
模式單元,如(ABC)可以理解為由多個(gè)原子組成的大的原子。
原子表,如 [ABC]。
重新使用的模式單元,如:\1
普通轉(zhuǎn)義字符,如:d, D, w
轉(zhuǎn)義元字符,如:*,.

POSIX正則表達(dá)式
POSIX正則表達(dá)式全稱為Portable Operating System Interface of Unix,意為UNIX可移植操作系實(shí)現(xiàn)接口。

構(gòu)造POSIX正則表達(dá)式的方法和創(chuàng)建數(shù)學(xué)表達(dá)式的方法一樣,也就是用多種元字符與操作符將小的表達(dá)式結(jié)合在一起來(lái)創(chuàng)建更大的表達(dá)式。

元字符(Meta-character)
元字符是用于構(gòu)造規(guī)則表達(dá)式的具有特殊含義的字符。如果要在正則表達(dá)式中包含元字符本身,必須在其前加上””進(jìn)行轉(zhuǎn)義
元字符 說(shuō)明
* 0次、1次或多次匹配其前的原子
+ 1次或多次匹配其前的原子
? 0次或1次匹配其前的原子
| 匹配兩個(gè)或多個(gè)選擇 列如 [1-9]|[a-b]|[A-Z] 與其中任何匹配為ture
^ 匹配字符串串首的原子 例如 abscd===^afdgfgf 相匹配
$ 匹配字符串串尾的原子 例如 dasdsv===v$
[] 匹配方括號(hào)中的任一原子 例如 s===[dsadas]
[^] 匹配除方括號(hào)中的原子外的任何字符 例如 aaaaa===[dddd]
{m} 表示其前原子恰好出現(xiàn)m次
{m,n} 表示其前原子至少出現(xiàn)m次,至少出現(xiàn)n次(n>m)
{m,} 表示其前原子出現(xiàn)不少于m次
() 整體表示一個(gè)原子
. 匹配除換行之外的任何一個(gè)字符

^ $ 這兩個(gè)原字符在一起稱為定界
abd===^abc$ 只有這樣才匹配

模式匹配的順序
順序 元字符 說(shuō)明
1 () 模式單元
2 ?* +{} 重復(fù)匹配
3 ^$ 邊界限制
4 | 模式選擇

POSIX正則表達(dá)式函數(shù)
ereg()和eregi()
ereg_replace()和eregi_replace()
split()和spliti()

ereg()和eregi()ereg()字符串匹配函數(shù),eregi()是ereg()函數(shù)的忽略大小的版本
語(yǔ)法格式:if (!ereg(‘^[^./][^/]*$’, $userfile))//不匹配格式輸出die
{
die(‘這是一個(gè)非法的文件名!’);
}

ereg_replace()和eregi_replace(忽略大小寫)替換
string eregi_replace (“正則表達(dá)式”,“目標(biāo)替換字符”,“替換目標(biāo)”)
語(yǔ)法格式:$string = “This is a test”;
echo str_replace(” is”, ” was”, $string);
echo ereg_replace(“( )is”, “\1was”, $string);\1 為繼承第一個(gè)整體
echo ereg_replace(“(( )is)”, “\2was”, $string);\2繼承第二個(gè)整體

split()和spliti(忽略大小寫)用正則表達(dá)式將字符串分割到數(shù)組中
list:給數(shù)組中的值賦予一些變量
語(yǔ)法格式:$date = “04/30/1973”;
list($month, $day, $year) = split (‘[/.-]’, $date);//列出三個(gè)變數(shù)對(duì)應(yīng)格式//以什么形式拆分 拆分誰(shuí)
echo “Month: $month; Day: $day; Year: $year<br />
“;
輸出結(jié)果Month: 04; Day: 30; Year: 1973

多行匹配

$rows = file(‘php.ini’); //將php.ini文件讀到數(shù)組中

//循環(huán)便歷
foreach($rows as $line)
{
if(trim($line))
{
//將匹配成功的參數(shù)寫入數(shù)組中
if(eregi(“^([a-z0-9_.]*) *=(.*)”, $line, $matches)) //循環(huán)進(jìn)行多行匹配
{
$options[$matches[1]] = trim($matches[2]);
}
unset($matches);
}
}

//輸出參數(shù)結(jié)果
print_r($options);

PCRE正則表達(dá)式
PCRE全稱為Perl Compatible Regular Expression,意思是Perl兼容正則表達(dá)式。
在PCRE中,通常將模式表達(dá)式(即正則表達(dá)式)包含在兩個(gè)反斜線“/”之間,如“/apple/”。

元字符(Meta-character)
元字符 說(shuō)明
A 匹配字符串串首的原子
Z 匹配字符串串尾的原子
b 匹配單詞的邊界 /bis/ 匹配頭為is的字符串 /isb/ 匹配尾為is的字符串 /bisb/ 定界
B 匹配除單詞邊界之外的任意字符 /Bis/ 匹配單詞“This”中的“is”

d 匹配一個(gè)數(shù)字;等價(jià)于[0-9]
D 匹配除數(shù)字以外任何一個(gè)字符;等價(jià)于[^0-9]
w 匹配一個(gè)英文字母、數(shù)字或下劃線;等價(jià)于[0-9a-zA-Z_]
W 匹配除英文字母、數(shù)字和下劃線以外任何一個(gè)字符;等價(jià)于[^0-9a-zA-Z_]
s 匹配一個(gè)空白字符;等價(jià)于[f
tv]
S 匹配除空白字符以外任何一個(gè)字符;等價(jià)于[^f
tv]
f 匹配一個(gè)換頁(yè)符等價(jià)于 x0c 或 cL
匹配一個(gè)換行符;等價(jià)于 x0a 或 cJ
匹配一個(gè)回車符等價(jià)于x0d 或 cM
t 匹配一個(gè)制表符;等價(jià)于 x09或cl
v 匹配一個(gè)垂直制表符;等價(jià)于x0b或ck
oNN 匹配一個(gè)八進(jìn)制數(shù)字
xNN 匹配一個(gè)十六進(jìn)制數(shù)字
cC 匹配一個(gè)控制字符

模式修正符(Pattern Modifiers)
i -可同時(shí)匹配大小寫字母
M -將字符串視為多行
S -將字符串視為單行,換行符做普通字符看待,使“.”匹配任何字符
X -模式中的空白忽略不計(jì)
U -匹配到最近的字符串
e -將替換的字符串作為表達(dá)使用
格式:/apple/i匹配“apple”或“Apple”等,忽略大小寫。 /i

PCRE的模式單元
//1 提取第一位的屬性
/^d{2}([W])d{2}\1d{4}$匹配“12-31-2006”、“09/27/1996”、“86 01 4321”等字符串。但上述正則表達(dá)式不匹配“12/34-5678”的格式。這是因?yàn)槟J健癧W]”的結(jié)果“/”已經(jīng)被存儲(chǔ)。下個(gè)位置“1”引用時(shí),其匹配模式也是字符“/”。

當(dāng)不需要存儲(chǔ)匹配結(jié)果時(shí)使用非存儲(chǔ)模式單元“(?:)”
例如/(?:a|b|c)(D|E|F)\1g/ 將匹配“aEEg”。在一些正則表達(dá)式中,使用非存儲(chǔ)模式單元是必要的。否則,需要改變其后引用的順序。上例還可以寫成/(a|b|c)(C|E|F)2g/。

PCRE正則表達(dá)式函數(shù)
preg_match()和preg_match_all()
preg_quote()
preg_split()
preg_grep()
preg_replace()

preg_match()和preg_match_all()正則表達(dá)式的匹配
語(yǔ)法格式:if (preg_match (“/php/i”, “PHP is the web scripting language of choice.”)) {
print “A match was found.”;
} else {
print “A match was not found.”;
}

preg_quote()轉(zhuǎn)義正則表達(dá)式字符
語(yǔ)法格式:$keywords = “$40 for a g3/400”;
$keywords = preg_quote ($keywords, “/”);//轉(zhuǎn)義誰(shuí) /轉(zhuǎn)義符號(hào)
echo $keywords;

preg_split()用正則表達(dá)式分割字符串
preg_split()本函數(shù)與split函數(shù)功能一致。
語(yǔ)法格式:$keywords = preg_split (“/[s,]+/”, “hypertext language, programming”);
print_r($keywords);

preg_grep()返回與模式匹配的數(shù)組單元
語(yǔ)法格式:$fl_array = preg_grep (“/^(d+)?.d+$/”, $array);

preg_replace()執(zhí)行正則表達(dá)式的搜索和替換
語(yǔ)法格式:

復(fù)制代碼 代碼如下:
$string = “April 15, 2003”;
$pattern = “/(w+) (d+), (d+)/i”;
$replacement = “${1}1,$3”;
print preg_replace($pattern, $replacement, $string);

preg_match_all()進(jìn)行全局正則表達(dá)式匹配
語(yǔ)法格式:

復(fù)制代碼 代碼如下:
preg_match_all (“|<[^>]+>(.*)</[^>]+>|U”,
“<b>example: </b><div align=left>this is a test</div>”,
$out, PREG_PATTERN_ORDER);
print $out[0][0].”, “.$out[0][1].”
“;
print $out[1][0].”, “.$out[1][1].”
“;

輸出結(jié)果:<b>example: </b>, <div align=left>this is a test</div> example: , this is a test

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
欧美日一区二区在线观看| 午夜欧美精品| 在线看片日韩| 国产日韩综合| 99视频+国产日韩欧美| 亚洲女同中文字幕| 影音先锋久久| 蜜桃久久久久久| 日韩精品免费观看视频| 欧美日韩一区二区三区四区在线观看| 日本午夜精品视频在线观看| 在线看片一区| 日本a级不卡| 欧美黄色一区| 欧美一级鲁丝片| re久久精品视频| 蜜臀91精品一区二区三区| 日韩精品1区2区3区| 欧美国产视频| 不卡一二三区| 欧美成人午夜| 国产精品老牛| 亚洲18在线| 国产精品一区二区美女视频免费看 | 三级亚洲高清视频| 中文字幕av亚洲精品一部二部| 一区二区三区四区精品视频| 婷婷激情一区| 亚洲第一精品影视| 国产精品调教视频| 亚洲午夜精品久久久久久app| 国产亚洲一区二区手机在线观看| 欧美日韩精品免费观看视欧美高清免费大片 | 国产成人调教视频在线观看| 国产激情久久| 91亚洲国产| 天堂资源在线亚洲| 视频一区免费在线观看| 欧美久久久网站| 国产不卡一区| 在线成人直播| 国产亚洲一区| 精品不卡一区| 亚洲天堂成人| 久久精品99久久久| 精品日韩视频| 日韩激情综合| 日韩在线观看| 蜜桃av一区二区三区电影| aa亚洲婷婷| www.九色在线| 91精品亚洲| 亚洲精品大片| 特黄毛片在线观看| 日韩一二三区在线观看| yellow在线观看网址| 午夜在线视频一区二区区别| 欧美日韩亚洲一区三区| 久久国产成人午夜av影院宅| 日韩av不卡一区二区| 欧洲在线一区| 欧美日韩精品一区二区三区在线观看| av一区在线| 国产欧美亚洲一区| 欧美日韩视频| 久久精品国产亚洲一区二区三区| 99在线精品免费视频九九视| 免费在线观看一区| 99精品视频在线| 国产精品久久久久久久久久久久久久久| 久久精品影视| 国产精品一区三区在线观看| 久久蜜桃av| 国产亚洲一区二区三区啪| 91精品91| 国内在线观看一区二区三区| 天海翼精品一区二区三区| 久久久久久久久久久9不雅视频| 国产亚洲高清在线观看| 黄色成人91| 中文字幕人成乱码在线观看| 日韩av影院| 亚洲综合不卡| 久久蜜桃资源一区二区老牛| 国产精一区二区| 丝袜美腿亚洲一区二区图片| 久久青青视频| 亚洲91在线| 亚洲激情av| 久久青草久久| 精品国产麻豆| 奇米狠狠一区二区三区| 亚洲欧美久久久| 99久久婷婷| 成人日韩在线| 水蜜桃久久夜色精品一区| 国产精品入口久久| 日韩三级久久| 蜜桃视频第一区免费观看| 亚洲欧洲一区| 激情综合自拍| 中文字幕系列一区| 日韩精品2区| 国产精品久久777777毛茸茸| 日韩高清在线不卡| 亚洲一区二区三区在线免费| 伊人久久亚洲| 欧美精品中文| 久久精品国产免费| 欧美日韩黄网站| 视频在线观看一区二区三区| 亚洲欧美综合| 日韩免费看片| 91欧美日韩| 成人在线丰满少妇av| 久久精品国产99国产| 久久不卡日韩美女| 91亚洲精品视频在线观看 | 伊人久久大香线蕉av超碰演员| 国产精品二区不卡| 麻豆网站免费在线观看| 国产精品成人一区二区不卡| 另类综合日韩欧美亚洲| 精品少妇一区| 国产91在线精品| 精品久久影院| 成午夜精品一区二区三区软件| 国产一区二区三区视频在线| 国产一区二区三区天码| 大香伊人久久精品一区二区| 欧美交a欧美精品喷水| 国产精品一区二区三区美女 | 精品欧美日韩精品| 国产精品对白| 国产精品对白久久久久粗| 91麻豆精品激情在线观看最新| 日韩高清一区二区| 国产精品日韩精品中文字幕| 美女视频网站久久| 日产精品一区二区| 久久精选视频| 欧美日韩在线播放视频| 亚洲一区日韩| 日韩国产一区二| 国产精品白丝一区二区三区| 精品亚洲成人| 亚洲91精品| 宅男噜噜噜66国产日韩在线观看| 视频一区在线视频| 日韩欧美中文字幕电影| 国产精品玖玖玖在线资源| 国产精品成人a在线观看| 亚洲91精品| 久热精品在线| 国产麻豆一区二区三区| 日韩欧美一区二区三区在线视频 | 98精品久久久久久久| 亚洲va在线| 在线看片日韩| 久久亚州av| 亚洲网站视频| 日韩在线观看一区二区三区| 久久成人av| 亚洲成人av观看| 欧美va亚洲va日韩∨a综合色| 国产色综合网| 欧美日韩一视频区二区| 国产高清不卡| 亚洲深夜福利在线观看| 国产精品白浆| 香蕉人人精品| 日韩精品视频在线看| 色婷婷色综合| 亚洲欧美视频一区二区三区| 激情91久久| 久久国产精品亚洲77777| 欧美日韩99| 久久xxxx精品视频| 国产精品亚洲人成在99www| 国产精品777777在线播放 | 国产一区二区三区自拍| 日本少妇精品亚洲第一区| 精品久久美女| 99亚洲精品| 高清一区二区三区| 蜜桃av一区二区三区电影| 久久毛片亚洲| 日本免费一区二区视频| 久久三级福利| 国产精品自拍区| 一本一本久久| 国产精品99在线观看| 亚洲综合不卡| 在线天堂资源www在线污| 亚洲日产国产精品| 日韩在线欧美| 青青草国产精品亚洲专区无| 在线视频观看日韩| 国产精品高清一区二区| 午夜在线一区|