zoukankan      html  css  js  c++  java
  • 采集解析内容、字符串空格等处理笔记

    $str ='人民网  
    									3小时前
    ';
    $str1 = '拍照的阿步  
                                                    2019年08月09日 21:56
    ';
    

    输出到浏览器看到的是  ,当时就是替换不掉。需要使用如下正则

      $str = preg_replace("/(xc2xa0)/", " ", trim($str));
    

    上面的正则/(xc2xa0)/要copy,不要自己写

     /**
         * 解析作者&时间数据
         * @param $str
         * @return array
         */
        public static function doAuthorAndTime($str)
        {
            $str = str_replace(" ", ' ', trim($str));
            $str = preg_replace("/(xc2xa0)/", " ", trim($str));
            $str = preg_replace("/s+/", ' ', $str);
            $author = '';
            $release_time = '';
            if ($str) {
                $tmp_arr = explode(' ', $str);
                $author = trim($tmp_arr[0] ?? '');
                $release_time = trim(($tmp_arr[1] ?? '') . ($tmp_arr[2] ?? ''));
            }
            return [$author, $release_time];
        }
    
        /**
         * 去掉字符串的空格
         * @param $str
         * @return mixed|null|string|string[]
         */
        public static function stripSpacing($str)
        {
            $str = str_replace(" ", '', trim($str));
            $str = preg_replace("/(xc2xa0)/", '', trim($str));
            $str = preg_replace("/s+/", '', $str);
            return $str;
        }
    
        /**
         * 去除标签以及里面的内容
         * @param array $tags 标签 ['span','p']
         * @param string $str 处理的html内容
         * @return null|string|string[]
         */
        public static function stripHtmlTags($tags, $str)
        {
            $html = [];
            foreach ($tags as $tag) {
                $html[] = '/(<' . $tag . '.*?>[s|S]*?</' . $tag . '>)/';
            }
            return preg_replace($html, '', $str);
        }
    
        /**
         * 去掉内容注释
         * @param $content
         * @return string
         */
        public static function stripAnnotation($content)
        {
            return preg_replace('#<!--[^![]*?(?<!//)-->#', '', $content);
        }
    
  • 相关阅读:
    非常实用的php各种文件操作函数
    两个自用的Dota2 自走棋辅助工具:阵容模拟器与UI Mod插件
    Scratch 数字游戏
    初识Scratch 3.0
    何时重头来
    cocos2d-x 3.0 Armature jsb 初体验
    cocosbuilder中的Callbacks和sound effects
    cocos2dx js文件加密为jsc文件
    cocos2dx jsb 在IOS与安卓下的一些不同之处
    安卓打包记录
  • 原文地址:https://www.cnblogs.com/zqsb/p/11382151.html
Copyright © 2011-2022 走看看