javascript - 仅将颜色应用于数组的一部分?

标签 javascript jquery html regex

我将从 other question 中复制一个数组为此:

console.log(arrayStr);

哪些输出:

(a) - text1, (b) - text2, (c) - text3, (d) - text3

如何将颜色应用到 (a) (b) 等部件?

正则表达式为:/\([^)]+\)/g;

谢谢。

最佳答案

为此,您可以扩展正则表达式以捕获一个组。然后,您可以使用它将匹配的 (X) 值包装在 span 元素中,您可以对其应用一些 CSS。试试这个:

$('div').html(function(i, html) {
  return html.replace(/(\([^)]+\))/g, "<span>$1</span>");
})
span { color: red; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>(a) - text1, (b) - text2, (c) - text3, (d) - text3</div>

这是一个原生 JS 实现:

var el = document.getElementById('foo');
el.innerHTML = el.innerHTML.replace(/(\([^)]+\))/g, "<span>$1</span>");
span { color: red; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="foo">(a) - text1, (b) - text2, (c) - text3, (d) - text3</div>

关于javascript - 仅将颜色应用于数组的一部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42857678/

相关文章:

jquery - 使用 Jquery Ajax 和 CFC 进行下拉填充

javascript - 使用数据绑定(bind)和挖空设置样式属性

javascript - 全局变量只能由第一个函数访问?

javascript - Leaflet -> 删除 CircleLayer 不起作用

javascript - 行克隆不起作用

javascript - 在 jQuery 中使用 switch 语句

html - 如何获得覆盖Flash视频的元素(尝试wmode = transparent)?

javascript - 删除 ul 标签的连续子代

javascript - 路由中的 Vue JS 动态组件。处理加载和错误

JavaScript。点击一个变色,点击另一个恢复,元素很多,怎么办?