From: x2001corpet
\n',strlen('$1'))", "str_repeat('\\\\n',strlen('$1'))");
+ MiniWiki::Markup(1, "/\\\\(?".">(\\\\*))\n/e", "str_repeat('
\n',strlen('$1'))", "str_repeat('\\\\n',strlen('$1'))");
// bold, italic and others
// ''' bold '''
- MiniWiki::Markup("/'''(.*?)'''/",'$1','*$1*');
+ MiniWiki::Markup(2, "/'''(.*?)'''/",'$1','*$1*');
// '' italic ''
- MiniWiki::Markup("/''(.*?)''/",'$1','/$1/');
+ MiniWiki::Markup(3, "/''(.*?)''/",'$1','/$1/');
// '+ big +'
- MiniWiki::Markup("/'\\+(.*?)\\+'/",'$1','*$1*');
+ MiniWiki::Markup(4, "/'\\+(.*?)\\+'/",'$1','*$1*');
// '- small -'
- MiniWiki::Markup("/'\\-(.*?)\\-'/",'$1','$1');
+ MiniWiki::Markup(5, "/'\\-(.*?)\\-'/",'$1','$1');
// '^superscript^'
- MiniWiki::Markup("/'\\^(.*?)\\^'/",'$1','$1');
+ MiniWiki::Markup(6, "/'\\^(.*?)\\^'/",'$1','$1');
// '_subscript_'
- MiniWiki::Markup("/'_(.*?)_'/",'$1','$1');
+ MiniWiki::Markup(7, "/'_(.*?)_'/",'$1','$1');
// {+ underline +}
- MiniWiki::Markup("/{+(.*?)+}/",'$1','_$1_');
+ MiniWiki::Markup(8, "/{+(.*?)+}/",'$1','_$1_');
// {- strikeout -}
- MiniWiki::Markup("/{-(.*?)-}/",'$1','_$1_');
+ MiniWiki::Markup(9, "/{-(.*?)-}/",'$1','_$1_');
// [+ big +] [++ bigger ++] [+++ even bigger +++] ...
- MiniWiki::Markup('/\\[(([-+])+)(.*?)\\1\\]/e',"'$3'", "'$3'");
+ MiniWiki::Markup(10, '/\\[(([-+])+)(.*?)\\1\\]/e',"'$3'", "'$3'");
// -----
- MiniWiki::Markup('/(\n|^)----+/s', '$1
', '$1----');
+ MiniWiki::Markup(11, '/(\n|^)----+/s', '$1
', '$1----');
// titles
- MiniWiki::Markup('/(\n|^)(!+)([^\n]*)/se', "'$1
'", "$0");
+ MiniWiki::Markup(13, "/(^|\n)\*(([^\n]*(\n|$))(\*[^\n]*(\n|$))*)/se", "'
'", "$0");
// # unordered list
- MiniWiki::Markup("/(^|\n)#(([^\n]*(\n|$))(#[^\n]*(\n|$))*)/se", "'
'", "$0");
+ MiniWiki::Markup(14, "/(^|\n)#(([^\n]*(\n|$))(#[^\n]*(\n|$))*)/se", "'
'", "$0");
// links
- MiniWiki::Markup('/((?:https?|ftp):\/\/(?:\.*,*[\w@~%$£µ&i#\-+=_\/\?;])*)/ui', '\\0', '\\0');
- MiniWiki::Markup('/(\s|^|\\[\\[)www\.((?:\.*,*[\w@~%$£µ&i#\-+=_\/\?;])*)/iu', '\\1www.\\2', 'http://www.\\2');
- MiniWiki::Markup('/(?:mailto:)?([a-z0-9.\-+_]+@([\-.+_]?[a-z0-9])+)/i', '\\0', '\\0');
- MiniWiki::Markup('/\\[\\[\\s*.*<\/a>\\s*\|([^\\]]+)\\]\\]/i', '\\2', '\\2 (\\1)');
+ MiniWiki::Markup(15, '/((?:https?|ftp):\/\/(?:\.*,*[\w@~%$£µ&i#\-+=_\/\?;])*)/ui', '\\0', '\\0');
+ MiniWiki::Markup(16, '/(\s|^|\\[\\[)www\.((?:\.*,*[\w@~%$£µ&i#\-+=_\/\?;])*)/iu', '\\1www.\\2', 'http://www.\\2');
+ MiniWiki::Markup(17, '/(?:mailto:)?([a-z0-9.\-+_]+@([\-.+_]?[a-z0-9])+)/i', '\\0', '\\0');
+ MiniWiki::Markup(18, '/\\[\\[\\s*.*<\/a>\\s*\|([^\\]]+)\\]\\]/i', '\\2', '\\2 (\\1)');
// paragraphs and empty lines
- MiniWiki::Markup("/\n\n/", '
', "\n\n"); - MiniWiki::Markup("/\n/", ' ', "\n"); - MiniWiki::Markup("/^.*<\/p>
.*$/s", "
$0
", "$0"); + MiniWiki::Markup(19, "/\n\n/", '', "\n\n"); + MiniWiki::Markup(20, "/\n/", ' ', "\n"); + MiniWiki::Markup(21, "/^.*<\/p>
.*$/s", "
$0
", "$0"); } - public static function WikiToHTML($s) { - return preg_replace(MiniWiki::$patternsWiki, MiniWiki::$replacementHTML, $s); + public static function WikiToHTML($wiki, $notitle = false) { + if ($notitle) { + $oldrule12 = MiniWiki::$replacementHTML[12]; + MiniWiki::$replacementHTML[12] = "'$0'"; + } + $html = preg_replace(MiniWiki::$patternsWiki, MiniWiki::$replacementHTML, htmlentities($wiki)); + if ($notitle) { + MiniWiki::$replacementHTML[12] = $oldrule12; + } + return $html; } };