第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

關(guān)于正則匹配,preg_match()函數(shù)是如何運(yùn)作的?

我先是寫了以下代碼,

<?php
$subject?=?"my?email?is?spark@imooc.com";
//在這里補(bǔ)充代碼,實(shí)現(xiàn)正則匹配,并輸出郵箱地址
$pattern='/\w+@\w+\.(com||cm)/';
preg_match($pattern,$subject,$match);
//echo?$match[0];
print_r($match);

結(jié)果是:
Array
(
????[0]?=>?spark@imooc.com
????[1]?=>?com
)
有兩個(gè),第二個(gè)是com
然后我修改了一下正則表達(dá)式;代碼如下:
<?php
$subject?=?"my?email?is?spark@imooc.com";
//在這里補(bǔ)充代碼,實(shí)現(xiàn)正則匹配,并輸出郵箱地址
$pattern='/\w+@\w+\.\w+/';
preg_match($pattern,$subject,$match);
//echo?$match[0];
print_r($match);

結(jié)果是:
Array
(
????[0]?=>?spark@imooc.com
)
就沒有[1]了。
為什么呢?
而且,我發(fā)現(xiàn)例子里的:
$subject?=?"abcdef";
$pattern?=?'/a(.*?)d/';
preg_match($pattern,?$subject,?$matches);
print_r($matches);?//結(jié)果為:Array?(?[0]?=>?abcd?[1]?=>?bc?)
例子里輸出的bc是abcd的中間兩個(gè),而我第一個(gè)代碼輸出的com是郵箱的末尾。這是為什么?


正在回答

0 回答

添加的圓括號(hào)相當(dāng)于給要匹配的內(nèi)容分組,preg_match()是把整體匹配和分組匹配的內(nèi)容都輸出了

$subject?=?"my?email?is?spark@imooc.com";

$pattern='/(\w+)@(\w+)\.(\w+)/';

你把正則改成這樣輸出下,我想你應(yīng)該就明白了

1 回復(fù) 有任何疑惑可以回復(fù)我~
#1

蝸牛的殼 提問者

嗯,確實(shí)如此!非常感謝!
2016-02-28 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

關(guān)于正則匹配,preg_match()函數(shù)是如何運(yùn)作的?

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)