我有一些如下字符串:
"linear-gradient(to bottom,rgba(255,0,0,0.4) 0,rgba(0,230,175,0.4) 100%);"
我想从rgba(255,0,0,0.4)
和rgba(0,230,175,0.4)
这样的搅拌中提取所有rgba和rgb。它尝试搜索并找到一些问题,例如this和this,但这个答案对我没有帮助。
答案 0 :(得分:3)
我想从搅拌中提取所有
rgba
和rgb
我希望您不要验证rgba和rgb中的数字,如果是,则使用捕获组从索引1获取匹配的组。
(rgba?\((?:\d{1,3}[,\)]){3}(?:\d+\.\d+\))?)
您可以使用Lazy
方式获取值,方法与匹配组索引1相同。
(rgba?.*?\))
最后模式说明:
( group and capture to \1:
rgb 'rgb'
a? 'a' (optional)
.*? any character except \n (0 or more times)
\) ')'
) end of \1
答案 1 :(得分:1)
如果您只想匹配字符串,例如rgba(255,0,0,0.4)
,而不解析值,只需使用:
arrayOfMatches = yourString.match(/rgba\([^)]+\)/g);