我有一个字符串,我需要验证它是否是有效的十六进制颜色代码.我的示例字符串如下:
1 - #ff00000
2 - #ff347820
如何验证上述字符串以检查它们是否是有效的十六进制颜色代码.
任何人都可以帮我解决这个问题吗?
提前致谢
njz*_*zk2 15
独立于支持未来格式的正确Android测试方法是依赖于Color该类.
像这样:
try {
Color color = Color.parseColor(myColorString);
// color is a valid color
} catch (IllegalArgumentException iae) {
// This color string is not valid
}
Run Code Online (Sandbox Code Playgroud)
作为奖励,它也支持命名的颜色,例如magenta,blue...
主要的正则表达式匹配是语义的.此代码显式测试myColorStringString作为Color.你几乎不需要任何评论来告诉我们做了什么.
Jof*_*rey 11
您可以使用正则表达式来执行此操作,在这种情况下,您可以使用Pattern类:
Pattern colorPattern = Pattern.compile("#([0-9a-f]{3}|[0-9a-f]{6}|[0-9a-f]{8})");
Matcher m = colorPattern.matcher(yourInputString);
boolean isColor = m.matches();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7670 次 |
| 最近记录: |