[英]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.