再一次求解
$p = '/name:([\w\s]+)/';
$str = "name:steven jobs";
preg_match($p, $str, $match);
echo $match[1]; //結(jié)果為:steven jobs
$p = '/\w{4}\:\w{6}\s\w{4}/';
為什么 name :可以直接放上去呢?你看最后一行是我沒看答案時(shí)寫的。。。。。
還有就是最后echo $match[0]
$match[1] 這種是什么意思?
$p = '/name:([\w\s]+)/';
$str = "name:steven jobs";
preg_match($p, $str, $match);
echo $match[1]; //結(jié)果為:steven jobs
$p = '/\w{4}\:\w{6}\s\w{4}/';
為什么 name :可以直接放上去呢?你看最后一行是我沒看答案時(shí)寫的。。。。。
還有就是最后echo $match[0]
$match[1] 這種是什么意思?
2016-02-18
舉報(bào)
2016-02-18
name:直接寫上去是表示所匹配的必須含有name:這個(gè)字符串,后面接上正則([\w\s]+)
至于$match[]是一個(gè)數(shù)組,用來存儲(chǔ)匹配成功的字符串,例如$match[0]所存儲(chǔ)的就是整個(gè)正則表達(dá)式所匹配成功的字符串,而 $match[1]表示第一個(gè)括號(hào)子模式所匹配的字符串即([\w\s]+),$match[2]則表示第二個(gè)括號(hào)子模式所匹配的字符串
你寫的那個(gè)就和題意有所不一致了......題目可能要求前面必須是有name:?????你的正則的話abcd:steven jobs";這是可以過得,具體還看題意,可能理解不到位吧
說得不好望指正
2016-02-18
對(duì)的,不然元字符本身有其他意義,加上\表轉(zhuǎn)義,就把元字符當(dāng)成文本了