Я хочу заменить всю дату пробелом из загруженного содержимого, используя SIMPLE HTML PHP DOM PARSER (simplehtmldom.sourceforge.net). Вот код:
include("simple_html_php_dom.php"); $html = file_get_html("http://freebacklinks.prijm.com"); //example.com $result = "$html"; $result = preg_replace("/([1-9]|[0-2][0-9]|3[0-1]) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) [0-9]{4}/", " ", $result); $result = preg_replace("/(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ([1-9]|[0-2][0-9]|3[0-1]) [0-9]{4}/", " ", $result); echo $result;
Итак, здесь все данные о дате, такие как: 01 Jan 2004
или Jan 01 2004
или Dec 12 14
должны быть заменены пробелом … Но не заменяя эти даты пробелом. Теперь, что делать?
Вот пример, показывающий, как он будет работать. Http://codepad.org/lAuHW565, но почему его не работает в PHP. Простой HTML DOM Parser
Вы пытаетесь заменить на объект SimpleHTML
что невозможно (это объект, а не строка). То, что вы должны сделать, это сначала получить HTML, затем заменить, а затем превратить его в SimpleHTML
с str_get_html
функции str_get_html
.
<?php include("simple_html_php_dom.php"); //Start with getting the pure HTML and replacing in that (don't use SimpleHTMLPHP for this) $html = file_get_contents("http://freebacklinks.prijm.com"); //example.com $html= preg_replace("/([1-9]|[0-2][0-9]|3[0-1])\s+(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+[0-9]{4}/", " ", $html); $html = preg_replace("/(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+([1-9]|[0-2][0-9]|3[0-1])\s+[0-9]{4}/", " ", $html); //Now create the $result variable: $result = str_get_html($html); echo $result; ?>
в<?php include("simple_html_php_dom.php"); //Start with getting the pure HTML and replacing in that (don't use SimpleHTMLPHP for this) $html = file_get_contents("http://freebacklinks.prijm.com"); //example.com $html= preg_replace("/([1-9]|[0-2][0-9]|3[0-1])\s+(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+[0-9]{4}/", " ", $html); $html = preg_replace("/(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+([1-9]|[0-2][0-9]|3[0-1])\s+[0-9]{4}/", " ", $html); //Now create the $result variable: $result = str_get_html($html); echo $result; ?>