| // +----------------------------------------------------------------------+ // // $Id: superscript.php,v 1.3 2004/12/02 10:54:32 nohn Exp $ /** * * This class implements a Text_Wiki_Rule to find source text marked for * strong emphasis (bold) as defined by text surrounded by three * single-quotes. On parsing, the text itself is left in place, but the * starting and ending instances of three single-quotes are replaced with * tokens. * * @author Paul M. Jones * * @package Text_Wiki * */ class Text_Wiki_Rule_superscript extends Text_Wiki_Rule { /** * * The regular expression used to parse the source text and find * matches conforming to this rule. Used by the parse() method. * * @access public * * @var string * * @see parse() * */ var $regex = "/\^\^(()|.*)\^\^/U"; /** * * Generates a replacement for the matched text. Token options are: * * 'type' => ['start'|'end'] The starting or ending point of the * emphasized text. The text itself is left in the source. * * @access public * * @param array &$matches The array of matches from parse(). * * @return A pair of delimited tokens to be used as a placeholder in * the source text surrounding the text to be emphasized. * */ function process(&$matches) { $start = $this->addToken(array('type' => 'start')); $end = $this->addToken(array('type' => 'end')); return $start . $matches[1] . $end; } /** * * Renders a token into text matching the requested format. * * @access public * * @param array $options The "options" portion of the token (second * element). * * @return string The text rendered from the token options. * */ function renderXhtml($options) { if ($options['type'] == 'start') { return ''; } if ($options['type'] == 'end') { return ''; } } } ?>