正则表达式搜索两个不同的字符串并替换为不同的值

问题描述

所以我需要以这种形式处理字符串:

<Text to be highlighted> word word word word <text again> something ...

因此,目标是用<b>替换所有开头 ,并用</b>替换> 。但是,我不能使用两个不同的正则表达式来查找 ,而不能使用另一个正则表达式来查找> ,因为当我运行第二个正则表达式时,最近创建的b标签也将被替换。

我完全知道javascript和字符串管理有许多解决方法,但是我想为此使用正则表达式。

这是我到目前为止所做的,但是有我之前说过的问题。

const expopening = new RegExp(/</gm);
const expclosing = new RegExp(/>/gm);

input.replace(expopening,'<b>');
input.replace(expclosing,'</b>');

解决方法

全局正则表达式替换应该在这里起作用

var input = "<Text to be highlighted> word word word word <text again> something ...";
var output = input.replace(/<(.*?)>/g,"<b>$1</b>");
console.log(input + "\n" + output);

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...