У меня есть строка ввода с двумя целыми числами, разделенными запятыми.
Пример (ОК):
3,5
Я хочу отклонить любой пользовательский ввод, содержащий первые 0 для любого числа.
Примеры (плохо):
03,5
00005,3
05,003
Теперь, что я мог бы сделать, это разделить два числа на 2 отдельных string
и использовать ltrim
на каждом, а затем посмотреть, изменились ли они по сравнению с тем, что было выполнено до ltrim
:
$string = "03,5";
$string_arr = explode(",",$string);
$string_orig1 = $string_arr[0];
$string_orig2 = $string_arr[1];
$string_mod1 = ltrim($string_orig1, '0');
$string_mod2 = ltrim($string_orig2, '0');
if (($string_mod1 !== $string_orig1) || ($string_mod2 !== $string_orig2)){
// One of them had leading zeros!
}
.. но это кажется излишне многословным. Есть ли более чистый способ сделать это? Возможно с preg_match
?