用正则表达式替换字符串

replace string with REGEX

我有以下字符串:2015-10-14T11:50:34

seconds 部分可以用 REGEX 魔法替换为 00 吗?

所以我需要从 2015-10-14T11:50:342015-10-14T11:50:00。我可以使用像这样工作的 REPLACE() 函数:REPLACE(string, regex)。请参阅 REPLACE() here.

的规范

这产生:2015-10-14T11:50+02:00

使用这个正则表达式:

([^:]\d\d:\d\d:)\d\d

并替换为:

00

Regex live here.

解释:

[^:]     # stands for non ':' character
\d       # stands for one digit
:        # stands for ':' character
(..)     # grouping a match

希望对您有所帮助。

我不知道 jena 的确切语法,但替换所需的正则表达式是:

\d+$ 

可能是这样的:

replace("2015-10-14T11:50:34", "\d+$", "00")

您可以使用 moment.js 来达到这个目的。这是与时间一起工作的好图书馆。 示例:

var result = moment('2015-10-14T11:50:34').format('YYYY/MM/DD HH:mm:00')

您可以在此处查看您需要的工作示例

https://jsfiddle.net/az0cgjac/1/

感谢大家的精彩回答。

抱歉,我在问题中提供的信息不明确。由于这是在 SPARQL 查询中完成的,因此对我有用的解决方案如下:

(CONCAT(SUBSTR('2015-10-14T11:50:34.583+02:00', 1, 17), '00')