JavaScript实现将反引号包裹内容替换为HTML code标签问题
解决方案
你的问题出在正则表达式只匹配了单个反引号,导致每个都被替换成</code>,而不是将`包裹的内容整体替换为标签包裹的形式。
修改后的代码如下:
stringdata = stringdata.replace(/`([^`]+)`/ig, "<code>$1</code>");
正则说明:
- ```:匹配起始的反引号
([^]+)`:捕获组,匹配所有非反引号的字符(确保只抓取两个反引号之间的内容)- ```:匹配结束的反引号
ig:i表示忽略大小写(此处非必需,可保留),g表示全局匹配,替换所有符合规则的内容
这样修改后,就能把所有被包裹的内容正确替换为内容`的形式,完全符合你的期望输出。
内容的提问来源于stack exchange,提问作者daniyalahmad
相关产品推荐
相关产品推荐

