假设我有这个字符串:
$string = "Hello! 123 How Are You? 456";
我想将变量$int
设置为$int = 123456;
我该怎么做呢?
例子2:
$string = "12,456";
必填项:
$num = 12456;
谢谢!
正确的变体将是:
$string = "Hello! 123 How Are You? 456";
$int = intval(preg_replace('/[^0-9]+/', '', $string), 10);
abc12345678901234556782312312323123123131232
。 - Mike Doefunction returnDecimal($text) {
$tmp = "";
for($text as $key => $val) {
if($val >= 0 && $val <= 9){
$tmp .= $val
}
}
return $tmp;
}
$array = [];
preg_match_all('/-?\d+(?:\.\d+)?+/', $string, $array);
在这里,$string代表输入的字符串,$array是每个数字(不仅限于正数,还包括负数!)被加载并可用于不同的操作。
使用这个正则表达式 !\d!
<?php
$string = "Hello! 123 How Are You? 456";
preg_match_all('!\d!', $string, $matches);
echo (int)implode('',$matches[0]);
0
。 - Shankar Narayana Damodaranint
类型不会使它成为八进制。 - Shankar Narayana Damodaran<?php
$string = "ABC100";
preg_match_all('!\d+!', $string, $matches);
$number = $matches[0][0];
echo $number;
?>
输出: 100
$int = preg_replace('/\D+/', '', $string);
的翻译是:使用正则表达式替换$string
中所有非数字字符为''
,并将结果赋值给$int
。 - Amal Murali