この種の文字列の正規表現を探しています
rgb(r,g,b)
rgba(r,g,b,a)
hsl(h,s%,l%)
hsla(h,s%,l%,a)
と:
r,g,b integer included between 0 and 255,
a float between 0 and 1 (truncated to first digit after the point)
h integer included between 0 and 359
s,l integer included between 0 and 100
RGBの場合、私はそれらの正規表現を書きました:
rgb\(\s*((?:[0-2]?[0-9])?[0-9])\s*,\s*((?:[0-2]?[0-9])?[0-9])\s*,\s*((?:[0-2]?[0-9])?[0-9])\s*\)$
動作しますが、rgb(299,299,299) のような文字列も許可します。より効果的にするにはどうすればよいですか?rgba、hsl、hslaはどうですか?ありがとう