php の preg_match_all でテキストから URL抽出

正規表現手抜き過ぎ?
  1. $urllist = array();  
  2.   
  3. if( preg_match_all('/https?:\/\/[a-zA-Z0-9\-\.\/\?\@&=:~#]+/'$text$matchs) !== FALSE){  
  4.  foreach ($matchs[0] as $line){  
  5.   $urllist[] = $line;  
  6.  }  
  7. }  

コメント