javascript - 用正则表达式结果的修改版本替换正则表达式

标签 javascript regex replace

所以我试图通过它们自己的修改版本来定位和替换 css 的所有颜色值。在这种情况下,我专注于具有相同值的所有颜色代码。

将#333333 替换为#333。

我的代码如下:

var regex = textCssMini1.replace(/\#\d{6}/g,"$1");

我的代码允许我找到 #333333 并将其替换为 $1。但是我想用 #333 替换它。

注意:我的字符串中存在多个颜色代码实例,例如 #000000,因此我想将它应用于任何可能性。

最佳答案

您可以将以下正则表达式用于捕获组 replace(/#([\da-f])\1([\da-f])\2([\da-f])\3/ig, "#$1$2$3")

var textCssMini1 = '#111111 #123456 #ffffff #225588 #235588 #333333 #gggggg ( not valid color code )';

var regex = textCssMini1.replace(/#([\da-f])\1([\da-f])\2([\da-f])\3/ig, "#$1$2$3");

document.write(regex);

Regex explanation

Regular expression visualization

关于javascript - 用正则表达式结果的修改版本替换正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36950885/

相关文章:

javascript - 使用指令使所有 div 具有相同的高度

php - 如何在 PHP 中获取 MySQL 函数的参数

javascript - javascript 上的预期十六进制

regex - 引号之间匹配的正则表达式,包含转义引号

.NET 用实际值替换占位符文本的最有效方法?

java - 查找并替换 xml 文件中的 int

javascript - 如何从javascript中的字符串替换(/"or/')到( "or ')

javascript - 使用 Angularjs 将数据传递到不同的 Controller

javascript - 使用 ReactJS 将 formData 发送到 Express API 并获取响应的 JSON

javascript - 根据设备方向更改网格