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;
    }
    
    ?>
    

      效果跟上面一样!

    特别谢谢此文的原作者。

  • 相关阅读:
    Ansible运维自动化(配置管理工具)
    Haproxy 概述及搭建
    Hadoop 单机与完全分布式配置
    大数据与Hadoop
    Hadoop 高可用
    kafka原理和集群
    zookeeper原理及搭建
    个人记录点滴
    Java中导入Excel文件
    反射相关
  • 原文地址:https://www.cnblogs.com/quixon/p/4716938.html
Copyright © 2011-2022 走看看