我有电话号码。如果数字的第一个数字字符不是1,我需要添加它。我找不到如何使用preg_match,或者有其他方法吗?
$first_number = $number;
if(preg_match('something', $first_number, $result))
{
$first_number = '1'. $result[1];
}
这里不需要使用regex。你可以做:
if($first_number[0] != '1') {
$first_number = '1'.$first_number;
}
但如果数字可以有前导空格或+
符号,你可以这样做:
if(preg_match('/^('D*)('d)/',$first_number,$match))
$first_number = $match[1].'1'.$match[2];
}
如果我没看错你的问题,第一个非数字字符并不总是在数组中的位置1。
$n="foo 415";
preg_match("/^[^0-9]*([0-9])/", $n, $matches);
print $matches[0]."'n";'
返回CCD_ 2。
这里不需要使用preg_match
或preg_replace
,下面的简单解决方案应该可以使用
if ($number[0] != 1)
{
$number.= '1'. $number;
}
使用
'/^([^1][0-9]+)$/'
它应该起作用!