| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1998 人关注过本帖
标题:有个关于字符串合并去重问题的可实现性疑惑?
只看楼主 加入收藏
大大哟nice
Rank: 2
等 级:论坛游民
威 望:3
帖 子:15
专家分:30
注 册:2016-11-26
收藏
 问题点数:0 回复次数:1 
有个关于字符串合并去重问题的可实现性疑惑?
问题如下:
有一个字符串,用“。”分割,写一个程序。合并字符串中相同的项。
如字符串“大家好[81]。你是谁[3]。大家好[3]。老师好[12]。上午好。上午好[12]。”,
合并后为"大家好[84]。你是谁[3]。老师好[12]。上午好[13]。"
搜索更多相关主题的帖子: 字符串 合并 分割 相同 老师 
2018-04-24 08:12
大大哟nice
Rank: 2
等 级:论坛游民
威 望:3
帖 子:15
专家分:30
注 册:2016-11-26
收藏
得分:0 
好吧!论坛这个板块好像没多少人啊!
贴上本人实现的代码段:
程序代码:
<?php>
        $str = "大家好[81]。你是谁[3]。大家好[3]。老师好[12]。上午好。上午好[12]。";
    $arr = explode ( "。", $str );                        //以"。"为分隔符,存储到数组$arr;
    foreach ( $arr as $key => $values ) {                 // 遍历$arr数组
        parse_str ( $values, $output );                    //把查询字符串解析到变量中  

        foreach ( $output as $key => $values ) {         // 遍历$output数组  其中$values是数组形式存储
            if (empty ( $values )) {                    //对于没有解析到空值,进行手动赋值
                $values [1] = "";
            }
            foreach ( $values as $k => $values ) {        //将$values数组中的键值存储到$tmp2数组中
                $tmp2 [] = $k;                       

            }
            $tmp [] = $key;                                //将output数组中的键值存储到$tmp数组中
        }
    }
    foreach ( $tmp as $key => $values ) {                 // 遍历$tmp数组        $values为字符串
        $a = array_keys ( $tmp, $values );                 // 返回重复值的键名 以数组形式返回
        $b = array();
        foreach ( $a as $v ) {                            //遍历$a数组    通过数组$a中的值将$tmp2中与其相关的值存储到$b数组中
            $b [] += $tmp2 [$v];               

        }
        $re[$values] = array_sum($b);                    //$re数组中的值为相同字符串后面值的和

    }
    foreach ($re as $key => $values){                                 //将结果以固定的结构输出
        echo $key."[".$values."]"."。";
    }
<?>
本人也在csdn上也开了一个帖子,其中有个人的方法比我的要简单多了,代码我就不贴了,有需要的自行点击传送门
地址:https://bbs.
2018-04-27 16:33
快速回复:有个关于字符串合并去重问题的可实现性疑惑?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024663 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved