关于字符串的缩写

思路大概是先按split()分割,然后分割后的每一个正则匹配数字和大写字母,最后再用split()拼接

function sx (string){
  var reg = /[^a-z]/g //匹配除小写字符之外的正则表达式
  var result = [] //存放结果
  //string.split('/') -> 'GdsjhdjNhfsdj10/10/10' -> ['GdsjhdjNhfsdj10', '10', '10']
  //遍历数组
  string.split('/').forEach((item) => {
    var matchStr = item.match(reg).toString().split(',').join('') 
    //item.match(reg) -> 'GdsjhdjNhfsdj10'->["G", "N", "1", "0"] 
    //item.match(reg).toString().split(',') 对象转字符之后在通过","分割->"G", "N", "1", "0"->["G", "N", "1", "0"]
    //item.match(reg).toString().split(',').join('') join方法将数组转为字符串,参数为拼接字符,这里使用空字符,GN10
    result.push(matchStr)
  })
  //遍历结束得到 result->["GN10", "10", "10"]
  return result.join('/') //["GN10", "10", "10"] -> "GN10/10/10"
}
//最后在调用
sx('字符串');
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值