PHP - 提取数字并将其括在<span> </span>中

时间:2014-11-05 19:50:59

标签: php regex

我想从一些字符串中提取数字并将它们括起来......就像这样:

$string1 = "Up to 3 bedrooms";
$string2 = "With 2 and 3 (wathever)";
echo myMagicFunction($string1); // Up to <span>3</span> bedrooms.
echo myMagicFunction($string2); // With <span>2</span> and <span>3</span> (wathever).

我想我可以使用preg_replace,但我不知道如何......

...韩国社交协会

3 个答案:

答案 0 :(得分:3)

function myMagicFunction($str)
{
    return preg_replace('/\d+/', '<span>$0</span>', $str);
}

答案 1 :(得分:2)

\d+匹配连续数字,$0以匹配替换字符串

function myMagicFunction($string) {
    return preg_replace('/\d+/', '<span>$0</span>', $string);
}
编辑:完全相同的功能在1分钟前发布。我想这里有一个明确的答案。

答案 2 :(得分:0)

试试这个......

$tok = strtok($string1, ' ');

$result = "";
while ($tok !== false) {
 if ( is_numeric($tok) )
    $result .= "<span>" . $tok . "</span>";
 else
    $result .= $tok;
 $tok = strtok(" \n\t");
}