繁体   English   中英

JS 替换为正则表达式

[英]JS replace with regex

我需要在字符串中的特定字符后替换空格:

原始字符串:

< TB :Sample Product Name >.< AT :some_property_name >

预期 output:

<TB:Sample Product Name>.<AT:some_property_name>

所以:

“<”和“>”之后的空格被删除

删除了“TB and:”和“AT and:”之间的空格

部分工作 function (相信有更好的方法):

 private sanitizeText(text: string): string {
    return text.replace(/([<])\s+/g, (el1, el2) => {
      return el2;
    })
      .replace(/\s+([>])/g, (el1, el2) => {
        return el2;
      });
  }

您可以使用:

text.replace(/(<)\s+|\s+(>)|(TB|AT)\s+(:)/g, '$1$2$3$4')

如果捕获组不匹配,则替换部分中的相应反向引用将给出空字符串。 所以,所有不同的情况都可以结合| 这里。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM