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);
        }
    
  • 相关阅读:
    Flask第31课——include标签
    flask第30篇——宏macro和import标签
    HTML第三课——css盒子
    HTML第二课——css【2】
    HTML第二课——css
    HTML第一课——基础知识普及【2】
    转一篇数据库面试题
    自创建数字证书,安装到浏览器
    【转】Base64算法详解
    【转】二维码生成原理
  • 原文地址:https://www.cnblogs.com/zqsb/p/11382151.html
Copyright © 2011-2022 走看看