如何从包含线性渐变定义的字符串中提取色标值? [英] How does one extract the color-stop values from a string which contains the definition of a linear gradient?

查看:0
本文介绍了如何从包含线性渐变定义的字符串中提取色标值?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个包含线性渐变定义的字符串...

linear-gradient(90deg, rgba(243,231,231,1), rgba(12,0,0,0.48))

.并且我需要以某种方式将两个色标值赋给一个变量,如下面的伪代码所示...

const color1 = "rgba(243,231,231,1)";
const color2 = "rgba(12,0,0,0.48)";

只提取数字也行,我只需要一些可以处理的东西。

问题是,我不能只计算字符和子字符串,因为我的线性梯度字符串值是动态的,可能会改变长度,您有什么想法吗?

推荐答案

您可以使用String#match

数据-lang="js"数据-隐藏="假"数据-控制台="真"数据-巴贝尔="假">
let str = "linear-gradient(90deg, rgba(243,231,231,1), rgba(12,0,0,0.48))";
let res = str.match(/rgba(.*?)/g);
console.log(res);

正则表达式说明:

如果您需要同时支持rgbrgba,请使用:

str.match(/rgba?(.*?)/g);

这篇关于如何从包含线性渐变定义的字符串中提取色标值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆