如何仅从“xyz123”字符串中提取数值,然后在第一个数字中添加5,即1,然后在最终输出中打印xyz623。
if(isset($login)){
$length = strlen($pass);
$c = false;
for($i=0; $i<$length; $i++){
if(preg_match('/^[0-9]$/',$pass[$i]) && $c==false){
$a = (int)$pass[$i];
$b = $a + 5;
echo "<br>".$b."<br>";
$c = true;
}
}
}
答案 0 :(得分:0)
$str = 'xyz123';
$output = preg_replace_callback('/([a-z]+)(\d{1})/i', function($m) {
$added = $m[2] + 5; // adding 5 to the number
return $m[1] . $added; // return the concatenated string
}, $str);
echo $output; // => xyz623