PHP HTML代码串截取代码
码串截取代码而且给的数据是 码串,比如这样: 张三 评论了 李四 分享的 一篇文章文章一长串的东西 截取的时候是要截取 签内部的东西,而且要保留 签,只是对其中的文字做处理。比如我可能只是截取到“李四”的“ 李”字,但是如果就这样放到前端的话, “李四”前面的 a 标签是没有闭合的,所以截取之后要保证 语法正确。 这个问题确实不太好搞,让我郁闷了两天。请注意,这只是一个字符串,只不过内容是码,是没有什么 。如果是在前端处理就好办了,直接 取,然后对里面的节点进行处理,最后把 类的东西输出就搞定了。现在可不行了,得换个思路。同事的思路是这样的: 遍历字符串的每一个字符。设置一个标记,碰到标签开始的标记之后再开始计数。对标签内部的字符串处理的时候,还要先判断当前字符的编码是不是可能是中文,一般来说 码的中文字符的长度都是 3,所以如果碰到是中文字符编码,就要跳过两个不记数……说到这里我自己头已经开始大了。个人认为这种方法很不爽,首先这种精致的逻辑不太容易控制,而且 码下中文产生的长度有可能是 3 个或 4 个 所以代码的严密性值得怀疑。 我个人的思路是,用 搞(具体用法请看 册吧) 。昨天研究了一下那个 发现这个东西还是挺好用的。首先,把这个字符串转换成 象,这样: $ , ‘; // 最后一个是设置编码的,注意,这里是不是 有中间那个连线。 然后获取$的 为转换之后$自动加上等标签): $ 这个时候你可以用 一些 $结构,会发现它把每个标签都变成了一个对应的对象,里面有相应的属性。举例来说,比如 这么一条语句对应的一些属性有: ”a” > “ 0]=>一个文本节点对象, >”#”} ….以看到,我们其实是可以单独去处理 a 标签对应节点下面的文字节点的值的,那样就不会破坏任何 整性。原来我以为改变 a 标签中文字节点的值之后, a 标签的会跟着改变,那样我直接返回 a 标签对应节点的 ,没想到不是那个样子,哎,所以处理过其中的文字之后还是要自己拼出新的 知道了 象的结构之后,一切就好办了,只要遍历所有的节点,对于本需求来说,就是找到那个 签,然后开始处理里面的节点。代码如下: if(‘ >= ${ $ 0, $‘…', ‘; $= $} $= $$ $ ‘; } 里面的$是一个子节点。注意,这里使用了 获取字符串长度。严重推荐一下这个 好用,它会把中文当作两个字符长度处理,正好符合这里的需求!而且截取字符串的时候用到了 个函数也会把中文当作两个字符长度处理,头的函数真是好用啊。 具体代码我就不写出来了,因为是针对一个需求写的,没做成通用的形式。哪天我有时间做成通用的再发布一下。 另外,可惜 支持 性,不然也不用后台那么辛苦地去截断了。如果大家有更好的方法,欢迎提出!不胜感激。 间 新浪微博 腾讯微博 搜狐微博 人人网 开心网 百度搜藏更多 码串 截取 复制链接收藏本文打印本文关闭本文返回首页 上一篇:储过程的方法 下一篇:限级分类,超级简单的无限级分类,支持输出树状图 相关文章 2008界符的使用详解 2011用 现唯一校验实现代码[简单应用]2011组函数序列之 - 获取数组键名 2013术常量与魔术方法的详解 2012 函数定义和用法2012持中文字母数字、自定义字体 证码代码 2013色转换函数十六进制格式转成十进制格式)2010出表格的实现代码(修正版)2012oc 助文档 2008行证整合 文章评论 最 近 更 新 自动分页的不完整解决方案 题杂谈 置文件现在需要绝密的短密码利用浏览器的 制台调试 序比较时间段一与时间段二是否有交集的 用防注入程序 推荐 启安全模式后禁用的函数集合通过 测 备的代深入探讨:用数据库永久连接方式操作 点 排 行 数使用方法 面跳转到另一个页面的多种 符串截取问题置文件详解 (配置)火车头采集器 集图文教程 现 详细的 明安装教程 和 和(换使用与 ,,