Home > Backend Development > PHP Problem > How to leave only numbers in php string

How to leave only numbers in php string

青灯夜游
Release: 2023-03-16 19:30:01
Original
3361 people have browsed it

2 methods: 1. Use for to traverse the string and splice the numeric characters into a substring in the loop body. The syntax is "for($i=0;$i

How to leave only numbers in php string

The operating environment of this tutorial: Windows 7 system, PHP version 8.1, DELL G3 computer

php string only Two ways to leave numbers

Method 1: Use the for statement is_numeric() ".=" string splicing

<?php
header("content-type:text/html;charset=utf-8");
function findNum($str) {
	$str = trim($str);
	if (empty($str)) {
		echo &#39;&#39;;
	}else{
		$result = &#39;&#39;;
		for ($i = 0; $i < strlen($str); $i++) {
			if (is_numeric($str[$i])) {
				$result .= $str[$i];
			}
		}
		var_dump($result);
	}
}
$str = &#39;0我是123456一段测试的字789符串0&#39;;
echo "原字符串:";
var_dump($str);
echo "过滤其他字符串后:";
findNum($str);
?>
Copy after login

Analyze the above code:

  • Use a for loop to traverse the string $str

  • Use is_numeric($ in the loop body str[$i]) Determine whether the $str[$i] character is a numeric character;

  • If so, take it out and use ".=" is spliced ​​into a digital substring.

Look at the output:

How to leave only numbers in php string

Method 2. Use the preg_replace() function

<?php
$str =&#39;0我是123456一段测试的字789符串0&#39;;
$result = preg_replace("/[^0-9]/", "", $str);
echo $result;
?>
Copy after login

Analyze the key code above:

##preg_replace("/[^0-9]/", "", $str) means matching except 0 Characters other than numbers between ~9 and replace these characters with null characters, that is, delete these characters. Then only numeric characters are left, so the output result is:

How to leave only numbers in php string

Let’s take a brief look at the preg_replace() function

The preg_replace() function can be executed Regular expression search and replacement is a powerful string replacement processing function. Its syntax format is "

preg_replace($pattern, $replacement, $subject [, $limit = -1 [, &$count ]])" means searching for the part matching pattern in the subject and replacing it with replacement; the optional parameter limit is used to set the maximum number of substitutions (the default value is -1, which can be unlimited).

Recommended learning: "

PHP Video Tutorial"

The above is the detailed content of How to leave only numbers in php string. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template