这个想法是在某些概述模式下可以看到前80个用户帖子的字符。但是我如何用bbtags做到这一点?
我完全不知道如何做到这一点,快速的谷歌搜索没有帮助。
示例:
Darth Vader [spoiler]is father of luke skywalker[/spoiler]
如果我想要20个字符的子字符串,我想要这个:
Darth Vader [spoiler]is fathe[/spoiler]
答案 0 :(得分:1)
也许你帮助这个代码,它应该进一步发展,但这个想法应该是明确的:
$str = 'Darth Vader [spoiler]is father of luke skywalker[/spoiler]';
function parse($str, $count)
{
$arr1 = str_split($str);
$result = [];
$i = 0;
$open = false;
foreach ($arr1 as $chr)
{
if ($open || $chr === '[')
{
$open = true;
if ($chr === ']')
{
$result[] = $chr;
$open = false;
}
else
{
$result[] = $chr;
}
}
elseif($i <= $count)
{
$result[] = $chr;
$i++;
}
}
return implode($result);
}
echo parse($str, 20);
您必须重写代码,并使用此案例进行测试:&#34;] [&#34;和&#34; [] [[[[[]]] [[]] [[[[&#34;
或选择其他算法,并使用正则表达式....