本文小编为大家详细介绍“php字符串如何只留下数字”,内容详细,步骤清晰,细节处理妥当,希望这篇“php字符串如何只留下数字”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
2种方法:1、用for遍历字符串,在循环体中将数字字符拼接成一个子串,语法“for($i=0;$i<字符串长度;$i++){if(is_numeric($str[$i])){$r.=$str[$i];}}”;2、用preg_replace()配合正则表达式来过滤字符,提取数字字符,语法“preg_replace("/[^0-9]/", "", $str)”。
本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑
php字符串只留下数字的两种方法
方法1:使用for语句+is_numeric()+“.=”字符串拼接
<?php header("content-type:text/html;charset=utf-8"); function findNum($str) { $str = trim($str); if (empty($str)) { echo ''; }else{ $result = ''; for ($i = 0; $i < strlen($str); $i++) { if (is_numeric($str[$i])) { $result .= $str[$i]; } } var_dump($result); } } $str = '0我是123456一段测试的字789符串0'; echo "原字符串:"; var_dump($str); echo "过滤其他字符串后:"; findNum($str); ?>
分析一下上面的代码:
利用for循环遍历字符串$str
在循环体中使用is_numeric($str[$i])
判断该$str[$i]
字符是不是数字字符;
如果是则取出来,使用 “.=
”拼接成数字子串。
看看输出结果:
方法2、使用preg_replace()函数
<?php $str ='0我是123456一段测试的字789符串0'; $result = preg_replace("/[^0-9]/", "", $str); echo $result; ?>
分析一下上面的关键代码:
preg_replace("/[^0-9]/", "", $str)
的意思为匹配除了0~9间的数字以外的字符,并将这些字符替换为空字符,即删除这些字符即可。那么就只剩下数字字符了,因此输出结果为:
我们来简单了解一下preg_replace()函数
preg_replace() 函数可以执行正则表达式的搜索和替换,是一个强大的字符串替换处理函数,该它的语法格式为“preg_replace($pattern, $replacement, $subject [, $limit = -1 [, &$count]])
”,表示搜索 subject 中匹配 pattern 的部分, 以 replacement 进行替换;可选参数 limit 用于设置最大可替换次数(默认值是-1,可无限制)。
读到这里,这篇“php字符串如何只留下数字”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。