【发布时间】:2022-12-05 00:59:34
【问题描述】:
我正在研究时间和子午线。
我可以有 '2:0 a. m.' 或 '2:0 am' 或 '3:0 p. m.' 或 '3:0 pm'
基本上我想做的是改变第一在第二当它发生时。
我的尝试:
console.info('2:0 a. m.'.replace(/(.*?\s)([ampAMP]*?)/, "$1")); // 2:0 a. m.
这个我真的看不懂。。。
'2:0 a. m.'.replace(/(.*?\s)([ampAMP]).*?([ampAMP])/, "$1"); // 2:0 .
这个可行,但看起来很奇怪,不确定这是最好的方法
'2:0 a. m.'.replace(/(.*?\s)([ampAMP]).*?([ampAMP]).*?$/, "$1$2$3");
当时我几乎无法删除子午线,但是如何在第一个空格之后替换所有不匹配[aAmMpP]的字符?
【问题讨论】:
-
也许你可以匹配多种可能的格式
\b(\d+)\s*:\s*(\d+)\s*([ap])\.\s*m\.regex101.com/r/J5UBf5/1
标签: javascript regex replace substring match