从左到右替换所有字符的最佳方法?

时间:2018-12-13 18:06:13

标签: javascript

我有这个看起来像这样的字符串:

1940-01-01T00:00:00

并且我正在尝试将其转换为此:

"1940-01-01T07:00:00.000Z".replace("T", "T00:00:00");

我不确定如何将所有以字母 T 开头的字符替换为00:00:00

有人知道如何做到这一点吗?提前谢谢。

到目前为止,这是我的代码,但似乎无法正常工作。

interface Engine {}

class V8 implements Engine {}

class Car {
    private $engine;
    public function __construct(Engine $engine) {
        $this->engine = $engine;
    }
}

$injector = new Auryn\Injector;
$injector->define('Car', ['engine' => 'V8']);
$car = $injector->make('Car');

3 个答案:

答案 0 :(得分:2)

这应该做你想要的

"1940-01-01T07:00:00.000Z".replace(/T.+$/, "T00:00:00")

答案 1 :(得分:0)

您可以像这样将子串与replace一起使用

var a = "1940-01-01T07:00:00.000Z";
alert(a.replace(a.substring(a.indexOf("T")+1,a.length), "00:00:00"));

在这里https://jsfiddle.net/vdadekvL/29/

答案 2 :(得分:0)

您的代码将T替换为T00:00:00,结果是1940-01-01T00:00:0007:00:00.000Z

对于您的示例数据,您可以做的是在T上拆分。然后从生成的Arary中取出第一项并附加T00:00:00

let result = "1940-01-01T07:00:00.000Z".split('T')[0] + "T00:00:00";
console.log(result);