zoukankan      html  css  js  c++  java
  • php提取字符串中的数字

    原文出处

    第一种方法:

    function findNum($str=''){
        $str=trim($str);
        if(empty($str)){return '';}
        $reg='/(d{3}(.d+)?)/is';//匹配数字的正则表达式
        preg_match_all($reg,$str,$result);
        if(is_array($result)&&!empty($result)&&!empty($result[1])&&!empty($result[1][0])){
            return $result[1][0];
        }
        return '';
    }
    

     测试结果:

    <?php
    
    $v_str_before="www.163.com";   //不好意思,此处用网易的域名举例
    
    $v_str_after=findNum($v_str_before);
    
    echo $v_str_before."</br>";
    echo "找出数字</br>";
    echo $v_str_after."</br>";
    
    function findNum($str=''){
        $str=trim($str);
        if(empty($str)){return '';}
        $reg='/(d{3}(.d+)?)/is';//匹配数字的正则表达式
        preg_match_all($reg,$str,$result);
        if(is_array($result)&&!empty($result)&&!empty($result[1])&&!empty($result[1][0])){
            return $result[1][0];
        }
        return '';
    }
    ?>
    

     如图所示:

    第二种方法:

    function findNum($str=''){
        $str=trim($str);
        if(empty($str)){return '';}
        $temp=array('1','2','3','4','5','6','7','8','9','0');
        $result='';
        for($i=0;$i<strlen($str);$i++){
            if(in_array($str[$i],$temp)){
                $result.=$str[$i];
            }
        }
        return $result;
    }
    

      测试结果:

    <?php
    
    $v_str_before="www.163.com";   //不好意思,此处用网易的域名举例
    
    $v_str_after=findNum($v_str_before);
    
    echo $v_str_before."</br>";
    echo "找出数字</br>";
    echo $v_str_after."</br>";
    
    function findNum($str=''){
        $str=trim($str);
        if(empty($str)){return '';}
        $temp=array('1','2','3','4','5','6','7','8','9','0');
        $result='';
        for($i=0;$i<strlen($str);$i++){
            if(in_array($str[$i],$temp)){
                $result.=$str[$i];
            }
        }
        return $result;
    }
    ?>
    

     效果跟上面一样!

    第三种方法:

    function findNum($str=''){
        $str=trim($str);
        if(empty($str)){return '';}
        $result='';
        for($i=0;$i<strlen($str);$i++){
            if(is_numeric($str[$i])){
                $result.=$str[$i];
            }
        }
        return $result;
    }
    

     测试结果:

    <?php
    
    $v_str_before="www.163.com";   //不好意思,此处用网易的域名举例
    
    $v_str_after=findNum($v_str_before);
    
    echo $v_str_before."</br>";
    echo "找出数字</br>";
    echo $v_str_after."</br>";
    
    function findNum($str=''){
        $str=trim($str);
        if(empty($str)){return '';}
        $result='';
        for($i=0;$i<strlen($str);$i++){
            if(is_numeric($str[$i])){
                $result.=$str[$i];
            }
        }
        return $result;
    }
    
    ?>
    

      效果跟上面一样!

    特别谢谢此文的原作者。

  • 相关阅读:
    解决PyQt5在安装后无法找到Designer.exe问题,两个位置可供参考
    观察者模式
    策略模式
    模板方法模式(下)
    学过的技术容易忘,怎么办?
    Mysql主从配置
    Springboot处理CORS跨域请求
    SpringBoot学习2之注解简单配置Springboot+MyBatis
    Confluence7.4安装并破解汉化教程
    mysql json类型
  • 原文地址:https://www.cnblogs.com/quixon/p/4716938.html
Copyright © 2011-2022 走看看