zoukankan      html  css  js  c++  java
  • PHP截取指定字符串中间的字符

    :PHP如何截取指定字符串中间的字符,比如如何截取如下字符串中 [sell=55] 的 55这个数字。

    $q = "秘qwqqq111密:[sell=55]0qwqw[/sell] 位置:[sell=55]0qwqw[/sell] 上面的付费查看";

    :第一种,可以使用正则,即如何获取正则匹配到的结果,我们可以用 preg_match_all — 执行一个全局正则表达式匹配,来处理,代码如下

    $q = "秘qwqqq111密:[sell=55]0qwqw[/sell] 位置:[sell=55]0qwqw[/sell] 上面的付费查看";
    
    /**
     * 获取正则匹配结果的方法
     * @param  [type] $reg 正则表达式
     * @param  [type] $str 需要操作的字符串
     * @return [type] 返回一个数组结果
     */
    function get_match_all($reg,$str){
     preg_match_all($reg,$str,$r);
     return @$r[1];
    }
    
    $c = get_match_all("/[sell=(.+?)]/", $q);
    echo '<pre>';
    var_dump($c);

    :返回的结果如下

    :第二种,我们可以用字符串操作方法,先通过 strpos — 查找字符串首次出现的位置,然后使用 substr — 返回字符串的子串,代码如下

    $q = "秘qwqqq111密:[sell=55]0qwqw[/sell] 位置:[sell=55]0qwqw[/sell] 上面的付费查看";
    
    $a = substr($q,strpos($q,'[sell=')+6);
    $cost = substr($a,0,strpos($a,']'));
    
    echo '<pre>';
    var_dump($cost);

    :最后打印结果如下

  • 相关阅读:
    hdu 1047 Integer Inquiry
    大数模板(高精度)
    git 学习
    java List 排序
    简单排序总结
    JDK1.8
    webservice 学习笔记 1
    inline-block,inline,block,table-cell,float
    mybatis 学习视频总结记录
    left join right inner join 区别
  • 原文地址:https://www.cnblogs.com/camg/p/12896465.html
Copyright © 2011-2022 走看看