如何在javascript中使用正则表达式加粗文本

如何在javascript中使用正则表达式加粗文本,javascript,regex,Javascript,Regex,我有一个文本变量 let data=“text text 04.02.2018 18:02:82 text text” 我有这样的捕获日期正则表达式:04.02.2018 18:02:82 我怎样才能“大胆”匹配 data = data.replace(/\d{1,2}.\d{1,2}.\d{4} \d{1,2}:\d{1,2}:\d{1,2}:/g, '<b>$1</b>') data=data.replace(/\d{1,2}.\d{1,2}.\d{4}\d{1,2

我有一个文本变量

let data=“text text 04.02.2018 18:02:82 text text”

我有这样的捕获日期正则表达式:
04.02.2018 18:02:82

我怎样才能“大胆”匹配

data = data.replace(/\d{1,2}.\d{1,2}.\d{4} \d{1,2}:\d{1,2}:\d{1,2}:/g, '<b>$1</b>')
data=data.replace(/\d{1,2}.\d{1,2}.\d{4}\d{1,2}:\d{1,2}:\d{1,2}:/g,$1'))
不工作,因为返回
text$1 text text

怎么了


感谢您的帮助。

使用以下方法:

let data=“text text 04.02.2018 18:02:82 text”;
data=data.replace(/(\d{1,2}.){2}\d{4}(\d{1,2}:){2}\d{1,2}/g,'$&');
控制台日志(数据)
let data=“text text 04.02.2018 18:02:82 text”;
data=data.replace(/(\d{1,2}.\d{1,2}.\d{4}\d{1,2}:\d{1,2}:\d{1,2})/g,$1');
您必须对模式进行分组,以便将结果引用为$1

您的正则表达式有问题 最后,您有一个冒号字符

data = data.replace(/\d{1,2}.\d{1,2}.\d{4} \d{1,2}:\d{1,2}:\d{1,2}:/g, '<b>$1</b>')

                                                                  ^
要匹配点,您需要使用以下命令:
\。

看看这个代码片段 另一种方法是将回调函数传递给
replace
函数

let data=“text text 04.02.2018 18:02:82 text”;
data=data.replace(/\d{1,2}\.\d{1,2}\.\d{4}\s\d{1,2}:\d{1,2}:\d{1,2}/g,函数(匹配){
返回`${match}`;
});

console.log(数据)
您是否尝试过
$&
?@Patrickkx Nope。现在它工作了。
.replace(/(\d{1,2}.\d{1,2}.\d{4}\d{1,2}:\d{1,2}:\d{1,2})/g,'$1')
data = data.replace(/\d{1,2}.\d{1,2}.\d{4} \d{1,2}:\d{1,2}:\d{1,2}:/g, '<b>$1</b>')

                                                                  ^
data = data.replace(/\d{1,2}.\d{1,2}.\d{4} \d{1,2}:\d{1,2}:\d{1,2}:/g, '<b>$1</b>')
                                          ^