+ -
当前位置:首页 → 问答吧 → PHP正则相关问题

PHP正则相关问题

时间:2010-01-17

来源:互联网

function acronym($matches){
    $acronyms=array(
        'WWW'=>'World Wide Web',
        'IRS'=>'Internal Revenus Service',
        'PDF'=>'Portable Document Format');
    print_r($acronyms);
    echo '</br>';
    if(isset($acronyms[$matches[1]])){                                                     //此处isset()是判断值是否存在,但是不明白的是$matches是作为参数传进来后是怎么和原$acronyms数组融合的呢?
        return $matches[1].'('.$acronyms[$matches[1]].')';
    }
    else{
        return $matches[1];
    }
}
$text='The <acronym>IRS</acronym> offers tax forms in <acronym>PDF</acronym> format on the <acronym>WWW</acronym>.';
$newtext=preg_replace_callback('/<acronym>(.*)<\/acronym>/U','acronym',$text);
echo $text.'</br>';
print_r($newtext);

这是一个preg_replace_callback()正则函数的例子,就是上面那一点没搞明白。作为数组$matches传入的参数如何与自定义函数里的数组融合的。
[ 此帖被dwtmtdh在2010-01-18 20:16重新编辑 ]

作者: dwtmtdh   发布时间: 2010-01-17


被下沉了

作者: dwtmtdh   发布时间: 2010-01-18

大家都不知道么??

作者: dwtmtdh   发布时间: 2010-01-18

隔了一天来看,看明白了。呵呵

作者: dwtmtdh   发布时间: 2010-01-18