如何在HTML文本的一部分中搜索短语,然后将其高亮显示/着色?

如何在HTML文本的一部分中搜索短语,然后将其高亮显示/着色?,html,css,replace,Html,Css,Replace,我见过很多类似的问题,但在我的情况下,我似乎不知道该怎么做。本质上,我有三个不同的变量:article、arg1、arg2。文章是一个大约5句长的字符串。Arg1和arg2是文章中的一个句子/短语。我将把这篇文章作为一个基本的标签放在网站上。但是我希望文章中的arg1和arg2是不同的颜色或高亮显示的,所以很明显它在文章中的位置。如何搜索标记中的文本,找到每个参数,然后更改特定文本的样式?替换为正则表达式非常有用: let str=document.getElementById(“str”);

我见过很多类似的问题,但在我的情况下,我似乎不知道该怎么做。本质上,我有三个不同的变量:article、arg1、arg2。文章是一个大约5句长的字符串。Arg1和arg2是文章中的一个句子/短语。我将把这篇文章作为一个基本的标签放在网站上。但是我希望文章中的arg1和arg2是不同的颜色或高亮显示的,所以很明显它在文章中的位置。如何搜索标记中的文本,找到每个参数,然后更改特定文本的样式?

替换为正则表达式非常有用:

let str=document.getElementById(“str”);
让结果;
result=str.innerHTML.replace(/Lorem Ipsum/gi,`Lorem Ipsum`)。replace(/sample book/gi,`sample book`);
str.innerHTML=结果;
console.log(str)
p.my span{
颜色:红色;
字体大小:粗体
}

Lorem Ipsum只是印刷和样书排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是行业标准的虚拟文本,当时一位不知名的印刷商拿起一个打印工具,将其拼凑成一本打印样本书。它不仅存活了五个世纪,而且还跨越到电子排版,基本上保持不变。20世纪60年代,随着包含Lorem Ipsum段落、Lorem Ipsum的Letraset表单的发布,以及最近使用桌面样本图书出版软件(如Aldus PageMaker,包括Lorem Ipsum版本)的发布,它开始流行起来。替换为正则表达式非常有用:

let str=document.getElementById(“str”);
让结果;
result=str.innerHTML.replace(/Lorem Ipsum/gi,`Lorem Ipsum`)。replace(/sample book/gi,`sample book`);
str.innerHTML=结果;
console.log(str)
p.my span{
颜色:红色;
字体大小:粗体
}

Lorem Ipsum只是印刷和样书排版行业的虚拟文本。自16世纪以来,Lorem Ipsum一直是行业标准的虚拟文本,当时一位不知名的印刷商拿起一个打印工具,将其拼凑成一本打印样本书。它不仅存活了五个世纪,而且还跨越到电子排版,基本上保持不变。它在20世纪60年代随着包含Lorem Ipsum段落的Letraset表的发行而流行,Lorem Ipsum和最近使用的桌面样本图书出版软件,如Aldus PageMaker,包括Lorem Ipsum的版本,应该不难通过将段落分割成块并迭代变量的出现以在其周围添加标记来实现

这是可以改进的,但一个简单的示例如下:

let arg=“dummy”;
让段落=document.getElementById('段落');
let breake=段落.innerHTML.split(arg);
段落.html='';
断开的.map((部分,i)=>{
段落.innerHTML+=i+1>=breaked.length?部分:部分+“”+arg+“”;
});

这只是一个虚拟文本,与任何其他虚拟文本一样,它除了作为虚拟文本之外,什么也不做。通过将段落分割成块并迭代变量的出现,在它们周围添加

标记,应该不难实现

这是可以改进的,但一个简单的示例如下:

let arg=“dummy”;
让段落=document.getElementById('段落');
let breake=段落.innerHTML.split(arg);
段落.html='';
断开的.map((部分,i)=>{
段落.innerHTML+=i+1>=breaked.length?部分:部分+“”+arg+“”;
});

这只是一个虚拟文本,与任何其他虚拟文本一样,它除了虚拟之外什么都不做

Html和css不是编程语言,考虑到变量和参数,这个问题似乎需要编程。你在使用javascript吗?现在还不清楚你想达到什么目的-你想突出显示匹配变量的句子吗?如果您希望它是静态的(不使用js),您可以创建一个新的标记并给它一个类,然后在css中相应地设置背景颜色的样式。看起来标题标签会显示文章的位置,但同样不清楚您要做什么。对不起,是的,我也会使用javascript@Hunter Wiley。我在网站上发布了大量数据,每个样本都有文章和这两个论点。我可以很容易地切换批处理并更新文章,但我希望每次切换到新文章时文章中的args都有颜色。如果您不想构建自己的文章,可以使用它。它完全符合您的要求HTML和css不是编程语言,考虑到变量和参数,这个问题似乎需要编程。你在使用javascript吗?现在还不清楚你想达到什么目的-你想突出显示匹配变量的句子吗?如果您希望它是静态的(不使用js),您可以创建一个新的标记并给它一个类,然后在css中相应地设置背景颜色的样式。看起来标题标签会显示文章的位置,但同样不清楚您要做什么。对不起,是的,我也会使用javascript@Hunter Wiley。我在网站上发布了大量数据,每个样本都有文章和这两个论点。我可以很容易地切换批处理并更新文章,但我希望每次切换到新文章时文章中的args都有颜色。如果您不想构建自己的文章,可以使用它。它完全符合你的要求