parse regra gradiente css com Javascript regex
no meu arquivo css eu tenho regra de gradiente, assim:
background-image:linear-gradient(to right, #FF0000 0%, #00FF00 20px, rgb(0, 0, 255) 100%);
Eu quero pegar todas as partes dessa string. A saída esperada é:
linear-gradient
to right
#FF0000
0%,
#00FF00
20px,
rgb(0, 0, 255)
100%
Era muito difícil para mim trabalhar em uma corda inteira, então decidi dividi-la em partes.
Gradiente linear
.*gradient[^\(]?
cores
rgb ?\([ 0-9.%,]+?\)|#[0-9a-fA-F]{3,6}\s[0-9]{1,3}[%|px]|#[0-9a-fA-F]{3,6}|(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow){1}(\s[0-9]{1,3}\s*[%|px]?)?
para a direita
(?<=\()(.*(top|left|right|bottom|center).*?)(?=,)
mas o último regex não funciona no JS porque ele não tem look-behind de regex. Logo, eu preciso aqui para obter tudo entre "(" e ","