javacript replace 正則取字符串中的值并替換【推薦】
replace() 方法用于在字符串中用一些字符替換另一些字符,或替換一個與正則表達(dá)式匹配的子串。
問題:
在使用ueditor 富文本編輯器,給字體顏色時,發(fā)現(xiàn)getCent后的內(nèi)容顏色為rgb
如 <span style="color: rgb(0, 0, 255);" >aaaaa </spa>
而前端需求rgb的讀取不了,因此要轉(zhuǎn)成16進(jìn)制的顏色。找了uedtitor編輯器一圈,沒找到方法。
因此。我想到的解決方法是,在提交保存之前,把富文本里的內(nèi)容找出rgb顏色并替換成16進(jìn)制顏色。
解決的js如下
function doSubmit(){ var content = UE.getEditor('messageTemplate').getContent(); content = content.replace(/rgba?\(\s?\d+\s?,\s?\d+\s?,\s?\d+\s?\)/g,function(){ return fixColor('color',arguments[0]); }) ....... } //rgb顏色 轉(zhuǎn)16進(jìn)制 function fixColor(name,value){ if (/color/i.test(name) && /rgba?/.test(value)) { console.log(value); var array = value.split(","); if (array.length > 3){ return ""; } value = "#"; for (var i = 0, color; color = array[i++];) { color = parseInt(color.replace(/[^\d]/gi, ''), 10).toString(16); value += color.length == 1 ? "0" + color : color; } value = value.toUpperCase(); } return value; }
js正則replace 還是好用的哈。
function test(){ var str = "<color color_tag=\"#112233\">";//目標(biāo)替換成 <color=#112233> str = str.replace(/ color_tag=\"(#.{6})\"/g,function(){ return "="+arguments[1]; }) console.log(str); }
總結(jié)
以上所述是小編給大家介紹的javacript replace 正則取字符串中的值并替換,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
JavaScript實現(xiàn)在頁面刷新時成功發(fā)送停止請求
最近接到一個需求,需要在頁面刷新或者關(guān)閉瀏覽器標(biāo)簽頁的時候觸發(fā)停止當(dāng)前sql的接口,所以本文小編給大家詳細(xì)介紹了解決方案和實現(xiàn)代碼,需要的朋友可以參考下2023-11-11js獲取當(dāng)前年月日-YYYYmmDD格式的實現(xiàn)代碼
下面小編就為大家?guī)硪黄猨s獲取當(dāng)前年月日-YYYYmmDD格式的實現(xiàn)代碼。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-06-06移動端a標(biāo)簽下載文件重命名(download)不生效解決辦法
在移動端使用a標(biāo)簽下載文件時,文件重命名可能不生效,尤其是在APP內(nèi)嵌頁面中,這通常是因為跨域問題導(dǎo)致的,文中將解決辦法介紹的非常詳細(xì),需要的朋友可以參考下2024-10-10javascript中使用css需要注意的地方小結(jié)
javascript中使用css需要注意的地方小結(jié),注意保留字問題。2010-09-09