All pastes #815399 Raw Edit

Someone

public text v1 · immutable
·published 2007-12-14 01:11 UTC
rendered paste body
<?php
  class parse {
    private $filename = null;
    private $content = null;
    function urls() {
      echo $this->filename;
      $this->content = file_get_contents($this->filename) or die('Could not access file: ' . $this->filename);
      if (preg_match_all("/<a\s[^>]*href=(\"??)\/wiki([^\" >]*?)\\1[^>]*>(.*)<\/a>/siU", $input, $urls)) {
        print_r($urls[2]);
        # $matches[2] = array of link addresses
        # $matches[3] = array of link text - including HTML code
      }
    }
    function words() {
      /**
        * Remove HTML tags, including invisible text such as style and
        * script code, and embedded objects.  Add line breaks around
        * block-level tags to prevent word joining after tag removal.
       */
      $text = preg_replace(
        array(
          // Remove invisible content
          '@<head[^>]*?>.*?</head>@siu',
          '@<style[^>]*?>.*?</style>@siu',
          '@<script[^>]*?.*?</script>@siu',
          '@<object[^>]*?.*?</object>@siu',
          '@<embed[^>]*?.*?</embed>@siu',
          '@<applet[^>]*?.*?</applet>@siu',
          '@<noframes[^>]*?.*?</noframes>@siu',
          '@<noscript[^>]*?.*?</noscript>@siu',
          '@<noembed[^>]*?.*?</noembed>@siu',
          // Add line breaks before and after blocks
          '@</?((address)|(blockquote)|(center)|(del))@iu',
          '@</?((div)|(h[1-9])|(ins)|(isindex)|(p)|(pre))@iu',
          '@</?((dir)|(dl)|(dt)|(dd)|(li)|(menu)|(ol)|(ul))@iu',
          '@</?((table)|(th)|(td)|(caption))@iu',
          '@</?((form)|(button)|(fieldset)|(legend)|(input))@iu',
          '@</?((label)|(select)|(optgroup)|(option)|(textarea))@iu',
          '@</?((frameset)|(frame)|(iframe))@iu',
          "/\s\s+/"
        ),
        array(
          ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ', ' ',
          "\n\$0", "\n\$0", "\n\$0", "\n\$0", "\n\$0", "\n\$0",
          "\n\$0", "\n\$0", " "
        ),
        strip_tags(html_entity_decode(trim($text)))
      );
      if (preg_match_all("/\w+/", $raw_text, $words)) {
        print_r($words);
        # $matches[2] = array of link addresses
        # $matches[3] = array of link text - including HTML code
      }
    }
    function __construct() {
      echo $this->filename;
      /*
      while(1) {

      }
      */
    }
  }

  $parse = new parse('http://en.wikipedia.org/wiki/Main_Page');
  $parse->urls();

?>