繁体   English   中英

在 label 中删除字符和更改文本颜色不起作用

[英]Removing characters and changing color of text in label doesn't work

我想用没有%的相同单词替换以%开头的每个单词,并将其颜色更改为绿色。

但是,我所能做的就是在不更改 colors 的情况下删除%

我在这里缺少什么吗?

 var text = "Lite %match Color" text = text.replace(/%(.*?)/g, "<span style='color: green'>$1</span>") document.getElementById("output").innerHTML = text
 <label id="output"></label>

您的正则表达式的问题在于,鉴于您在.*? ,它将匹配最少的字符,根本没有。 为了解决此问题,您可以将该部分替换为\S+ ,尝试匹配任何非空格字符(至少一个)。

 var text = "Lite %match Color" text = text.replace(/%(\S+)/g, "<span style='color: green'>$1</span>") document.getElementById("output").innerHTML = text
 <label id="output"></label>

 var text = "Lite %match Color" text = text.replace(/\s+%(.*?)\s+/g, "<span style='color: green'> $1 </span>") document.getElementById("output").innerHTML = text
 <div id="output"> </div>

暂无
暂无

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

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