我有一个这样的字符串:
*"Hola @user1,@user2. ¿Que tal ayer con@user3 en #el_parque?"*
我想提取@mentions
并分析用户是否存在。如果不存在,我将删除@
标签。
我怎样才能解析字符串?
我在这个功能上开发
if(!empty($Timeline)){
$CI =&get_instance();
$words = explode(" ", $Timeline);
$renderTimeline = "";
$patternu = '@([a-zA-Z09]+)';
$patternm = '/([#]{1})([a-zA-Z0-9\_]+)/';
if(!isset($CI->usuarios_model)){$CI->load->model('usuarios_model');}
if(!isset($CI->juegos_model)){$CI->load->model('juegos_model');}
foreach($words as $word){
if(preg_match($patternu,$word)){ //mencion
$word = preg_replace($patternu, '$0', $word);
echo $word;
$usuario = $CI->usuarios_model->get(null,preg_replace($patternu, '\2', $word));
if(!$usuario){$word = substr($word,1);}
}elseif(preg_match($patternm,$word)){ //juego
$juego = $CI->juegos_model->existJuego(null,preg_replace($patternm, '\2', $word));
if(!$juego){$word = substr($word,1);}
}
$renderTimeline.=" ".$word;
}
return trim($renderTimeline);
}