Advertisement
velio84

articleParser

Dec 17th, 2014
306
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.34 KB | None | 0 0
  1. <?php
  2.  
  3. $pattern = "/[\w\s]+%\s*[A-Za-z.\s]+;\d{2,}-\d{2,}-\d{4,}-.+/";
  4. preg_match_all($pattern, $_GET['text'], $tempArr);
  5. $text = $tempArr[0];
  6.  
  7. $text = preg_replace("/\s{2,}/", " ", $text);
  8.  
  9. foreach ($text as $article) {
  10.     $article = trim($article);
  11.    
  12.     preg_match("/[A-z\s]+/", $article, $t);
  13.     $topic = array_map('trim', $t);
  14.     $topic = implode("", $topic);
  15.    
  16.     $trimmedText = preg_replace("/[A-z\s-]+%/", "", $article);
  17.     preg_match("/[A-Za-z.-\s]+/", $trimmedText, $a);
  18.     $author = array_map('trim', $a);
  19.     $author = implode("", $author);
  20.    
  21.     $trimmedText = preg_replace("/[A-z\s.-]+;/", "", $trimmedText);
  22.     preg_match("/\s*[\d]{2,2}-[\d]{2,2}-[\d]{4,4}/", $trimmedText, $d);
  23.     $date = array_map('trim', $d);
  24.     $date = implode("", $date);
  25.    
  26.     $trimmedText = preg_replace("/\s*[\d]{2,2}-[\d]{2,2}-[\d]{4,4}-/", "", $trimmedText);
  27.     preg_match("/[^\n]+/", $trimmedText, $at);
  28.     $articleText = array_map('trim', $at);
  29.     $articleText = implode("", $articleText);
  30.    
  31.     $dateObj = DateTime::createFromFormat('d-m-Y', $date);
  32.     $date = $dateObj->format("F");
  33.    
  34.     echo "<div>";
  35.     printArticle("Topic:", $topic);
  36.     printArticle("Author:", $author);
  37.     printArticle("When:", $date);
  38.     printArticle("Summary:", $articleText);
  39.     echo "</div>";
  40.    
  41. }
  42.  
  43. function printArticle($topic, $data) {
  44.     echo "<b>$topic</b> <span>".htmlspecialchars($data)."</span>";
  45. }
  46.  
  47. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement