删除带有单词javascript的大括号之间的空格

Remove spaces between curly brackets with words javascript

本文关键字:之间 空格 删除 单词 javascript      更新时间:2023-09-26

我写了一个小函数来将模板片段注入到HTML中,而无需使用EJS,Mustache.js,Nunjucks,Pure.js等"大"模板引擎。

我用键值对象传递这段代码:

<div><b>@{firstname} @{lastname}</b>, @{gender}</div>

现在,如果有人尝试用"@{ firstname }"代替"@{firstname}",我需要删除多余的空格。

很抱歉,我不知道如何编写正确的 ReGex 来删除空格。如何删除空格?

感谢您的支持。


更新:感谢@Saleem的回答。这是一个带有修复程序的演示:https://jsfiddle.net/avq3sntq/

尝试以下正则表达式:

result = subject.replace(/(@'{)'s*('S+)'s*(?=})/img, "$1$2");

如果输入字符串为:

<div><b>@{ firstname } @{lastname}</b>, @{gender}</div>

输出将是:

<div><b>@{firstname} @{lastname}</b>, @{gender}</div>

如您所见,删除大括号内名字周围的所有多余空格。在此处查看演示