转换" 3 - 4"到" 03 - 04"用PHP

时间:2015-06-21 13:12:07

标签: php regex

我试图找到一种方法将零附加到10以下的所有数字。

示例:

  

"3 - 4"变为"03 - 04"

     

"3 - 10"变为"03 - 10"

     

"1 - 7"变为"01 - 07"

等等。

感谢。

2 个答案:

答案 0 :(得分:1)

以下preg_replace()函数中的正则表达式模式匹配单个数字(单个数字之前和之后没有任何数字);然后,该函数将前导0附加到找到的匹配项:

<?php
$str = "0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15";
$result = preg_replace('~(?<!\d)\d(?!\d)~', '0$0', $str);
echo $result; // 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15
?>

答案 1 :(得分:1)

您可以使用这样的简单正则表达式:

\b(\d)\b

<强> Working demo

Php代码

$str = "3 - 4\n\n3 - 10\n\n1 - 7 ";  
$result = preg_replace('/\b(\d)\b/', "0$1", $str);

enter image description here