在串數字,所以我有這個字符串:操縱使用PHP
100.25 $ -500 $
我想修改的數值,然後將其放回字符串。因此,例如,我希望能夠取出每個浮點值,將其操作前(100.25 * 10)和(500 * 2),並將其重新放回(1000.25 $ -1000 $)中。它必須是靈活的,因爲美元符號也可以在另一邊。
在此先感謝。
preg_match_all('/\d+/', $str, $matches);
echo $matches[0];
在串數字,所以我有這個字符串:操縱使用PHP
100.25 $ -500 $
我想修改的數值,然後將其放回字符串。因此,例如,我希望能夠取出每個浮點值,將其操作前(100.25 * 10)和(500 * 2),並將其重新放回(1000.25 $ -1000 $)中。它必須是靈活的,因爲美元符號也可以在另一邊。
在此先感謝。
preg_match_all('/\d+/', $str, $matches);
echo $matches[0];
我可以建議該功能
$correctionArr = array(10, 2);
echo changeString('100.25$-500$', $correctionArr);
function changeString($str, $correct){
$array = explode('-', $str);
if(count($array) > 0){
foreach ($array as $key => $amount) {
if(isset($correct[$key])){
$return[] = (float)$amount * $correct[$key] . '$';
}
else $return[] = $amount;
}
}
return implode('-', $return);
}
在校陣列($ correctionArr),你可以設置你要操縱
非常感謝你!!!!!!!!!!!!!!! – jmanjam321 2014-12-04 15:27:56
使用正則表達式(https://regex101.com/)這個(http://ideone.com/3JvnCZ)
<?php
$re = "/[\\d.]+/";
$str = "100.25$-500$";
preg_match_all($re, $str, $matches);
var_dump($matches);
echo ($matches[0][1] * 10) . "$-" . ($matches[0][1] * 2) . "$";
PS:你之前有一個變量值這個(POST,GET,JSON等)?
因爲我們還沒有作出了努力,自行解決問題,其量,看起來你正在尋找[聘請自由職業者爲你做你的工作](http://www.freelancer.com)。 StackOverflow不是,也從未成爲「給我teh codez」網站。我們幫助 - 我們不是您的免費勞力。如果你 - 事實上 - 自己已經努力了,你需要發佈你的代碼。 – h2ooooooo 2014-12-03 20:32:10