python 数据结构处理题

['', 'CAS:', '', '', '689-97-4', '', '', '', '中文名称:', '', '乙烯基乙炔', '', '', '英文名称:', '', 'Vinyl acetylene;Buten-3-yne', '', '', '别 名:', '', '', '', '', '分子式:', 'C4H4;CH2CHCCH', '分子量:', '', '52.04', '', '', '熔 点:', '', '-118℃  沸点:5℃', '', '', '密 度:', '', '相对密度(水=1)0.71;', '', '', '蒸汽压:', '', '', '', '溶解性:', '', '', '', '', '稳定性:', '', '稳定', '', '', '外观与性状:', '', '气态(常温)', '', '', '危险标记:', '', '4(易燃气体)', '', '', '用 途:', '', '在工业上是很需要的烯炔烃化合物,用于制备合成橡胶的单体2-氯丁二燃-[1,3]等']

比如
'别 名:', '', '', '', '', '分子式:' 这两个中间有4个空格,那么我想把这四个空格变一个空格 就是这样 '别 名:','',然后小于4个空格的都删掉,比如'CAS:', '', '', '689-97-4' 这两个中间有2个空格,我都删掉 'CAS:' '689-97-4'

有4个空格变为1个空格,少于4个空格都删除,求算法

最佳答案

一行js代码解决

var arr = ['', 'CAS:', '', '', '689-97-4', '', '', '', '中文名称:', '', '乙烯基乙炔', '', '', '英文名称:', '', 'Vinyl acetylene;Buten-3-yne', '', '', '别 名:', '', '', '', '', '分子式:', 'C4H4;CH2CHCCH', '分子量:', '', '52.04', '', '', '熔 点:', '', '-118℃  沸点:5℃', '', '', '密 度:', '', '相对密度(水=1)0.71;', '', '', '蒸汽压:', '', '', '', '溶解性:', '', '', '', '', '稳定性:', '', '稳定', '', '', '外观与性状:', '', '气态(常温)', '', '', '危险标记:', '', '4(易燃气体)', '', '', '用 途:', '', '在工业上是很需要的烯炔烃化合物,用于制备合成橡胶的单体2-氯丁二燃-[1,3]等']

console.log(arr.join().replace(/(\,{5})/g, m => ',%,').split(',').filter(e => e).map(e => e == '%' ? '' : e))