剔除markdown的标签,为了加快速度,可以先截取前若干字符再剔除。
Markdown.php
<?php
class Markdown
{
static public function getIntro($md, $intro_count)
{
$md = mb_substr($md, 0, $intro_count * 2);
//剔除[TOCM]和[TOC]
$md = preg_replace('/\[TOCM?\]/', '', $md);
//剔除标题符号'#'
$md = preg_replace('/(?m)^#+/', '', $md);
//剔除列表符号'-'
$md = preg_replace('/(?m)^- /', '', $md);
//剔除块代码标签
$md = preg_replace('/(?m)^```.*/', '', $md);
//剔除图片和链接标签,并提取文字
$md = preg_replace('/!?\[(.*)\](\(.+\)?)?/', '$1', $md);
//剔除行内代码标签`
$md = preg_replace('/`(.+)`?/', '$1', $md);
//剔除表格符合|和-
$md = preg_replace('/[\|-]/', '', $md);
return mb_substr($md, 0, $intro_count);
}
}
本文标签: PHP
暂无评论,赶紧发表一下你的看法吧。