if (preg_match('~[x{4e00}-x{9fa5}]+~u', $str)) { preg_match('/[(.+?)](s|_)([a-zA-Z]+)/', $str, $pat_array); return $pat_array[count($pat_array) - 1]; }
命名变量
<?php $str = <<<FOO {{first.DATA}} 登录时间:{{keyword1.DATA}} 登录IP:{{keyword2.DATA}} {{remark.DATA}} FOO; preg_match_all('/(?P<name>.+):(?P<digit>.+)/', $str, $matches); var_dump($matches);
多行匹配注意:(.| )+?
<?php $str = <<<FOO {{first.DATA}} 登录时间:{{keyword1.DATA}} 登录IP:{{keyword2.DATA}} {{remark.DATA}} FOO; preg_match_all('/{{first.DATA}}(.| )+?{{remark.DATA}}/', $str, $matches); var_dump($matches);