jsk*_*ski 2 html php regex parsing
嘿,我有一个很大的html字符串
<a style="background: rgb(100, 101, 43) none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-backg round-inline-policy: -moz-initial;" href="#">swatch4</a>
<a style="background: rgb(34, 68, 33) none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-b ackground-inline-policy: -moz-initial;" href="#">swatch5</a>
<a style="background: rgb(11, 38, 68) none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -m oz-background-inline-policy: -moz-initial;" href="#">swatch6</a>
<a style="background: rgb(39, 11, 60) none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial ; -moz-background-inline-policy: -moz-initial;" href="#">swatch7</a>
Run Code Online (Sandbox Code Playgroud)
......这些条目很多......
我想最终得到的是一个php数组
$colors = array(
'rgb(34, 34, 33)',
'rgb(11, 38, 68)',
...
);
Run Code Online (Sandbox Code Playgroud)
等等
我需要帮助提取字符串的rgb部分.我的正则表达式吃了太多的字符串我遇到了麻烦.Anyhelp将不胜感激,我想把它弄清楚并学习如何做(而不是完成它).我正在使用vim btw.
谢谢
简单的正则表达式是
(rgb\(\s*\d{1,3}\s*,\s*\d{1,3}\s*,\s*\d{1,3}\s*\))
Run Code Online (Sandbox Code Playgroud)
每个"\ s*\d {1,3}\s*",表示:
您可以将Paolo的代码用于数组部分.