$s = <<<s
<div id="message3446880" class="t_msgfont">我是中国人
</div>
s;$r = '/<div id=\"message.*\" class=\"t_msgfont\">(.*?)<\/div>/';
preg_match($r, $s, $arr);
print_r($arr);/*
不知道为什么上面数组时空的,而如果将$s改为:
$s = <<<s
<div id="message3446880" class="t_msgfont">我是中国人</div>
s;也就是却掉字符串中的那个换行
却可以,不知道为什么
*/
$r = '/<div id=\"message.*\" class=\"t_msgfont\">(.*?)<\/div>/s';//加上s即可
$r = '/<div id=\"message.*\" class=\"t_msgfont\">([\s\S]*?)<\/div>/';
或者这样,应该也可以,我没测,s修正,反正就是把换行也匹配进来我水平也烂的很,一起学习吧