ya lo consegui amigos, usando
Código PHP:
$regExp1="/(http:[^ ]*)/i";
Pero tengo un nuevo problema con expresiones regulares, tengo el siguiente codigo
Código PHP:
<?
function Obtener_contenidos1($url1,$inicio1='',$final1){
$source1 = @file_get_contents($url1)or die('se ha producido un error');
$posicion_inicio1 = strpos($source1, $inicio1) + strlen($inicio1);
$posicion_final1 = strpos($source1, $final1) - $posicion_inicio1;
$found_text1 = substr($source1, $posicion_inicio1, $posicion_final1);
return $inicio1 . $found_text1 .$final1;
}
$url1 = "http://www.threatexpert.com/report.aspx?md5=2a306cc6ac1767d5548529285ec0cd45";
$mega= Obtener_contenidos1($url1,'<table cellpadding="0" cellspacing="0" style="width:100%"><tr><td><img style="border: none" src="./resources/other_mod.gif"/></td><td width="100%" class="h3">Other details</td></tr></table>','<div class="discl">');
$d = $mega;
$swear1 = array("<li>", "</li>", "<td class=\"cell_1\">", "</td>", "<td>", "</tr>", "<tr>");
foreach($swear1 as $key=> $value){
$d = str_replace("$value", " ", $d);
}
$marca = "/\.([a-z]{2,4})$/";
preg_match_all($marca,$d,$c);
echo $c."<br>";
$count1 = count($c[1]);
echo $count1."<br>";
for ($r = 0; $r < $count1 ; $r++) {
echo $c[1][$r]."<br>";
}
?>
Lo que necesito es que saque las direcciones por el dominio de primer nivel, en este caso creo que tendria que mostrarme los .exe, pero no muestra nada; sera problema de la expresion regular o del codigo en si ya que siuso como ejemplo la siguiente expresion regular
"/(http:[^ ]*)/i" si funcona, de antemano gracias
El codigo lo simplifique de esta manera:
Código PHP:
$str = file_get_contents("http://www.threatexpert.com/report.aspx?md5=2a306cc6ac1767d5548529285ec0cd45");
$text1 = ereg_replace("</td>", " ", $str);
$text2 = ereg_replace("<br>", " ", $text1);
$text3 = ereg_replace("\"", " ", $text2);
$text = ereg_replace("</li>", " ", $text3);
$swear = array("http://www.threatexpert.com", "<td>", "</tr>", "<tr>");
foreach($swear as $key=> $value){
$text = str_replace("$value", " ", $text);
}
$regExp1="/(\.[a-z]{1,4}[$ ]*)/i";
$file = ('$text');
preg_match_all($regExp1,$text,$a);
$count = count($a[1]);
echo $count;
for ($row = 0; $row < $count ; $row++) {
echo $a[1]["$row"]."<br>";
}
pro no se como hacer para que muestre el array
el codigo lo corregi y ya muestra los dominios de primer nivel, pero falta que muestre toda la direccion como en el caso de los exe, tendria que mostrar
im/172.exe im/podmena.exe im/adv.exe etc el dominio de primer nivel con el de segundo, pero no muestra nada de eso,
buscando en lagunos lugares e podido hacer esta expresion regular que muestra algo de lo que necesito, pero necesito mejorarlo
Cita: $regExp1="/([^ ]*)(\.[a-z]{1,4}[$ ]*)/i";
alguien me ayude, please!!!
LLegue a esto pero me sale error
Código PHP:
$str = file_get_contents("http://www.threatexpert.com/report.aspx?md5=2a306cc6ac1767d5548529285ec0cd45");
$text1 = ereg_replace("</td>", " ", $str);
$text2 = ereg_replace("<br>", " ", $text1);
$text3 = ereg_replace("\"", " ", $text2);
$text = ereg_replace("</li>", " ", $text3);
$swear = array("http://www.threatexpert.com", "<td>", "</tr>", "<tr>", "<li>", "<br>");
foreach($swear as $key=> $value){
$text = str_replace("$value", " ", $text);
}
$regExp1="/[^.]+\.[^.]+$/i";
preg_match($regExp1, $text, $coincidencias);
$count = count($coincidencias[1]);//error aqui
for ($row = 0; $row < $count ; $row++) {
echo $coincidencias[1][$row]."<br>";
}
el error es:
Código PHP:
Notice: Undefined offset: 1 in C:wampwwwkavget.php on line xx
Please, help!!!