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

      效果跟上面一样!

    特别谢谢此文的原作者。

  • 相关阅读:
    初入博客
    MFC中Enter、ESC的屏蔽及PreTranslateMessage
    数据结构中链表的创建、添加、删除、清空、倒序输出及链表倒置
    数据库重要知识点总结
    云端服务器永久运行node项目的方法!!!!!!!!
    腾讯云centeros mysql相关问题与解决指南!!!!搭建属于自己的前端服务器!!!!
    最全的正则匹配!!!!!!!!!手机号,邮箱
    win10硬盘开启 bitlocker后手动加锁
    myeclipse相同变量的颜色高亮
    一款基于Bootstrap扁平化的后台框架Ace
  • 原文地址:https://www.cnblogs.com/quixon/p/4716938.html
Copyright © 2011-2022 走看看