php提取字符串中的数字

php提取字符串中的数字

php提取字符串中的数字(三种方法)

2016-06-20 20:28:58 峰尚 1,755 次 0

如何使用PHP将字符串中的数字提取出来的功能做了一个小总结,总结三种方法如下:

第一种方法,使用正则表达式:

1

2

3

4

5

6

7

8

9

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

第二种方法,使用in_array方法:

1

2

3

4

5

6

7

8

9

10

11

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

第三种方法,使用is_numeric函数:

 

1

2

3

4

5

6

7

8

9

10

11
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;
}
$a
=
'你19啊你15啊你16啊'
;
$b
=preg_match_all(
'/\d+/'
,
$a
,
$arr
);
print_r(
$arr
);

$arr中放置的就是取到的数字,只取一个的话 可以把preg_match_all换成preg_match

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/112790.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Linux渗透之Ettercap详解「建议收藏」

    Linux渗透之Ettercap详解「建议收藏」Ettercap最初设计为交换网上的sniffer,但是随着发展,它获得了越来越多的功能,成为一款有效的、灵活的中介攻击工具。它支持主动及被动的协议解析并包含了许多网络和主机特性(如OS指纹等)分析。ettercap在backtrack系统中自带,若想自己安装可以使用Defaultapt-getinstallettercap1apt-getinstallettercap(源中要有

    2022年6月28日
    76
  • Qt QTreeWidget 详解[通俗易懂]

    Qt QTreeWidget 详解[通俗易懂]一.基础设置1.添加顶层节点//添加顶层节点QTreeWidgetItem*topItem1=newQTreeWidgetItem(ui->treeWidget);topItem1->setText(0,”百度”);ui->treeWidget->addTopLevelItem(topItem1);2.设置表头隐藏,展开所有项//隐藏表头ui->treeWidget->setHeade.

    2022年10月1日
    2
  • idea2021.01.激活码【在线注册码/序列号/破解码】

    idea2021.01.激活码【在线注册码/序列号/破解码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月20日
    65
  • 空间向量和矩阵_线性无关的函数内积为零吗

    空间向量和矩阵_线性无关的函数内积为零吗文章目录前言一、集合的基本概念二、向量空间1.运算规则和定理2.RnR^nRn和CnC^nCn三、实内积空间1.内积2.范数四、复内积空间五、线性映射前言本文学习过程来源是《矩阵分析与应用-张贤达》一书.可以通过z-lib下载.线性空间是某一类事物在矩阵代数里的一个抽象的集合表示,线性映射或线性变换则反映线性空间中元素间最基本的线性关系.上面这句话出自书中第14页开头,读下来第一感觉就是云里雾里,毕竟出现了新的名称.对于线性空间可以简单的把它理解为几何空间(实际上不仅仅

    2022年10月21日
    2
  • VS2013过期激活,VS2013激活,vs2013序列号,VS2013密钥,VS013产品密匙

    VS2013过期激活,VS2013激活,vs2013序列号,VS2013密钥,VS013产品密匙vs2013认证许可已过期vs2013旗舰版密匙VS2013ultimatekeyVS2013激活码序列号,产品密钥,产品密匙,验证码,vs2013旗舰版破解:破解密匙,破解序列号:然后点击”更改我的产品许可证”, 不要点登录那里。。。输入密钥 BWG7X-J98B3-W34RT-33B3R-JVYW9即

    2022年5月19日
    45
  • p6操作教程_pc6视频教学

    p6操作教程_pc6视频教学在开发的过程中,我们经常会遇到由于sql语句书写错误导致的bug,那么如何来解决这种困扰呢?如果方法执行完了可以打印出完整的sql语句,就可以方便我们判断执行的是否正确,所以我们希望有一个可以打印sql语句的插件。p6spy就是一款这样的工具,下面给大家介绍一下p6spy的使用。使用p6spy需要做以下三步:1. 导入jar包:将jar包复制到项目中去,记得要buildpath一下。我用…

    2022年10月5日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号