PHP explode 如何在分割字符串的时候保留分割符 20

比如现在有一个类似的列表如<liclass="list">xxxxxx</li><liclass="list">xxxxxx</li><liclass="list">xx... 比如现在有一个类似的列表如
<li class="list">xxxxxx</li><li class="list">xxxxxx</li><li class="list">xxxxxx</li><li class="list">xxxxxx</li><li class="list">xxxxxx</li><li class="list">xxxxxx</li>

我想将其分割为数组
但是用explode分割该字符串的时候
假如我以 "li><li" 作为分割符号
虽然可以分割开来 但"li><li"本身就不存在了
如何在php中将类似的列表分隔开来并包含分隔符本身?
展开
 我来答
地豆信
2012-07-20 · TA获得超过127个赞
知道小有建树答主
回答量:237
采纳率:0%
帮助的人:153万
展开全部
<?php
$string = '<li class="list">aaaa</li><li class="list">bbbb</li><li class="list">cccc</li><li class="list">ddddd</li><li class="list">eeeee</li><li class="list">fffff</li>';
$patterns = array();
$patterns[0] = '/\<li class="list"\>/';
$patterns[1] = '/\<\/li\>/';
$replacements = array();
$replacements[0] = '';
$replacements[1] = ' ';
$string= preg_replace($patterns, $replacements, $string);
$str_array=explode(' ',$string);
print_r($str_array); //想要的数组
?>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
第佛0Bt
2012-07-20 · 超过12用户采纳过TA的回答
知道答主
回答量:90
采纳率:0%
帮助的人:33.6万
展开全部
如果你把有规则的字符串 处理成数组,explode 是行不通的,你只能用正则匹配,正则会返回一个数组,这个数组就是你想要的结果
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhangjianlai52
2012-07-20 · TA获得超过184个赞
知道小有建树答主
回答量:414
采纳率:0%
帮助的人:174万
展开全部
$x=
"<li class="list">xxxxxx</li><li class="list">xxxxxx</li><li class="list">xxxxxx</li><li class="list">xxxxxx</li><li class="list">xxxxxx</li><li class="list">xxxxxx</li>";
$arr=explode("<li class="list">",$x);

function cube($n)
{
return "<li class="list">".$n;
}
$arr2= array_map("cube", $arr);
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友710e89b4c
2012-07-20 · 超过33用户采纳过TA的回答
知道答主
回答量:84
采纳率:0%
帮助的人:93.4万
展开全部
我不知道有没有你说的那种函数,不过,就你做到的这种程度,你可以处理一下你得到的数组,给数组中第一个元素结尾加上li>这个,最后一个元素开头加上<li,中间的元素头加<li尾加li>,这样行得通吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式