function MarkdownExtra_Parser::stripLinkDefinitions in Markdown 6
Overrides Markdown_Parser::stripLinkDefinitions
File
- ./
markdown.php, line 1845
Class
Code
function stripLinkDefinitions($text) {
#
# Strips link definitions from text, stores the URLs and titles in
# hash references.
#
$less_than_tab = $this->tab_width - 1;
# Link defs are in the form: ^[id]: url "optional title"
$text = preg_replace_callback('{
^[ ]{0,' . $less_than_tab . '}\\[(.+)\\][ ]?: # id = $1
[ ]*
\\n? # maybe *one* newline
[ ]*
(?:
<(.+?)> # url = $2
|
(\\S+?) # url = $3
)
[ ]*
\\n? # maybe one newline
[ ]*
(?:
(?<=\\s) # lookbehind for whitespace
["(]
(.*?) # title = $4
[")]
[ ]*
)? # title is optional
(?:[ ]* ' . $this->id_class_attr_catch_re . ' )? # $5 = extra id & class attr
(?:\\n+|\\Z)
}xm', array(
&$this,
'_stripLinkDefinitions_callback',
), $text);
return $text;
}