javascript - 替换数字模式中的子字符串

标签 javascript regex replace

我有一个字符串

text *inner text 1* text2 *inner text 2*

我必须将子字符串替换为 <span></span>

输出

text <span>inner text 1</span> text2 <span>inner text 2</span>

我试过了

replace(/[*]/g,"<span>")

我知道使用/g 会将所有出现的内容替换为 <span>另外我不能在替换中放置两个参数,所以问题是如何用 </span> 替换每个偶数出现

最佳答案

正则表达式

\*([^\*]+)\*

let str = 'text *inner text 1* text2 *inner text 2*'

console.log(str.replace(/\*([^\*]+)\*/g, '<span>$1</span>'))

演示

https://regex101.com/r/wj9WkA/1/

关于javascript - 替换数字模式中的子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60815232/

相关文章:

javascript - 以优雅的方式根据模型的属性迭代 Backbone 集合

javascript - Three.js:结合 tween.js 围绕世界轴旋转对象

python - Python 正则表达式是否等同于 Ruby 的原子分组?

python - 如何在Python中将第二行连接到第一行末尾?

Javascript:替换冒号和逗号字符

c - C 中什么函数可以替换字符串中的子字符串?

javascript - 为什么我需要使用 stopPropagation()?

javascript - Javascript 中的组合延迟函数调用

java - Java 接受无效的正则表达式。这是 Java 错误还是对期望的错误解释

java - 如何在字符串中搜索可解析的日期