0

语言使用 PHP TimeString = 1500-1550

我想使用 preg_replace 将字符串的 1550 的一半更改为 1530。我尝试使用模式(/d|/d/d)50 我遇到困难的地方是我不知道如何使用替换功能来更改任何 /d50 或 /d/d50有一个 30 后缀。我不想在 php 中起诉 str replace,因为它会在 50 场比赛后第一次将 1500 更改为 130。有任何想法吗?

4

3 回答 3

2

这里..

<?php
    $numbers = array (1500, 1550, 140, 150, 15000);
    foreach ($numbers as $number) {
        echo preg_replace('/(\d|\d\d)50\b/', '${1}30', $number);
        echo "\n";
    }
?>

将返回:

1500
1530
140
130
15000
于 2013-03-19T20:05:36.313 回答
1

要匹配您需要使用的数字\d。不是/d

于 2013-03-19T19:47:54.323 回答
0
preg_replace('/(\d\d)50/', '${1}30', $string)
于 2013-03-19T19:47:53.373 回答