颜色字符串转换(正则)
题目描述
将 rgb 颜色字符串转换为十六进制的形式,如 rgb(255, 255, 255) 转为 #ffffff
1. rgb 中每个 , 后面的空格数量不固定
2. 十六进制表达式使用六位小写字母
3. 如果输入不符合 rgb 格式,返回原始输入
代码
1 function rgb2hex(sRGB) { 2 var rgb = /rgb\((\d+)\s*,\s*(\d+)\s*,\s*(\d+)\)/; 3 var rgbArr = sRGB.match(rgb);//rgbArr = {rgb(255, 255, 255),255,255,255} 4 /*var rgb = /rgb\((\d+)\s*,\s*(\d+)\s*,\s*(\d+)\)/g 5 //rgb = {rgb(255, 255, 255)}*/ 6 var str = "#"; //颜色值 7 if(!rgbArr){ //不符合正则匹配 8 return sRGB; 9 } 10 else { 11 for(var i = 1 ; i<4; i++){ 12 var rgbIndex = parseInt(rgbArr[i]); 13 if(rgbIndex<16 && rgbIndex>=0){ 14 str += ('0'+rgbIndex.toString(16));//保留两位数 15 } 16 else if(rgbIndex>=16 && rgbIndex<=255){ 17 str += rgbIndex.toString(16); 18 } 19 else { 20 return sRGB; //不是颜色值字符 21 } 22 } 23 return str; 24 } 25 }
来源:牛客网
转载于:https://www.cnblogs.com/daheiylx/p/9010821.html
颜色字符串转换(正则)相关推荐
- 字符串转换为列表 python_python,_python把字符串转换成列表,python - phpStudy
python把字符串转换成列表 python{'title': u'第一条新闻标题', 'description': u'第一条新闻描述,这条新闻没有预览图','picurl':u'http://im ...
- 如何把一段逗号分割的字符串转换成一个数组?
String.split() StringTokenizer类 package com.study.JavaBase;import org.junit.Test;import java.util.Ar ...
- Visual Basic 2005 - 如何将色彩字符串转换成 Color 结构
Visual Basic 2005 - 如何将色彩字符串转换成 Color 结构 之前有读者询问,如何将字符串转换成色彩,当时我们建议可以利用 ColorDialog 来让用户选取颜色.不过这样做 ...
- json字符串转换成json对象,json对象转换成字符串,值转换成字符串,字符串转成值...
json字符串转换成json对象,json对象转换成字符串,值转换成字符串,字符串转成值 原文:json字符串转换成json对象,json对象转换成字符串,值转换成字符串,字符串转成值 主要内容: 一 ...
- php人民币转换,PHP字符串转换RMB形式数字
字符串与数字转换的前提是字符串为数字型否则就会转成0了,下面我们要介绍的是像0001000我们要转成1000,00这种,下面来看看. PHP 是一门脚本语言,但它很神奇,你用POST一串数字过去,用v ...
- python种颜色循环_Python 实现一个颜色色值转换的小工具
需求说明 公司的 UI 设计小哥,已经转用 Zeplin 很久了.Zeplin 的设计稿展示页面的颜色色值使用十进制的 RGB 表示的,在 Android 中的颜色表示大多情况下都需要十六进制的 RG ...
- 8. 字符串转换整数 (atoi)(正则表达式)
字符串转换整数--C, Python实现 1. 问题描述与分析 2. C语言实现 3. Python实现 3.1 普通判断法 3.2 正则表达式法 1. 问题描述与分析 问题描述: 问题分析: 该算法 ...
- VB 汉字字符串转换成拼音
以下这个函数可以将一个汉字字符串转换成拼音 Private Function Getpy(Txt) Dim d, TmpTxt Dim wzcode, i, TmpWZ, a, b, ii Set d ...
- 微信小程序之js 字符串转换成数字的三种方法, 取float型小数点后两位数的方法
在js读取文本框或者其它表单数据的时候获得的值是字符串类型的,例如两个文本框a和b,如果获得a的value值为11,b的value值为9 ,那么a.value要小于b.value,因为他们都是字符串形 ...
最新文章
- 想自学Python却不知该如何入门?这篇文章带你轻松入门Python
- Eclipse导入Maven项目出现错误:Unsupported IClasspathEntry kind=4
- ai怎么画循环曲线,怎么用 Adobe Illustrator 画出曲率连续的曲线?
- mybatis插入mysql出现中文乱码
- vue-router 按需加载
- 沈阳职业计算机学院宿舍几人间,沈阳工学院宿舍怎么样 住宿条件好不好
- 使用redis批量生成主键(订单)Id
- mingw64 下 java_Win7 64 配置MinGW,以及使用Eclipse
- IE 7.0抛弃Win2000用户?(zz)
- 为什么有人说开车时,最能看出一个人的情商和潜力?
- N---Exponentiation
- 币圈名利场,一场赤裸裸的狼人杀
- 华为机试HJ64:MP3光标位置
- mybatis项目报错:java.sql.SQLException: ORA-00911: 无效字符 解决方法
- python批量安装第三方库_使用Python批量安装第三方库
- 搜狗CEO王小川:很多语音识别公司在AI领域掉进了陷阱
- 【编程题目】寻找丑数
- Window下本地redis的安装、配置以及java版试用
- 系统性的学会 Pandas, 看这一篇就够了!
- 水箱液位计算机控制系统设计,水箱水位PLC自动控制系统的设计_吕宁.pdf