replace函数结合正则表达式实现转化成驼峰与转化成连接字符串的方法

//连接符转成驼峰写法
function toCamel(str){
    var reg=/-(\w)/g;
    return str.replace(reg,function(){
        return arguments[1].toUpperCase();
    });;
}
console.log(toCamel("dfd-dsfd-eeee-fgg"));
//驼峰写法转成连接符
function toHyphenate(str){
    var reg=/\B([A-Z])/g;
    return str.replace(reg,"-$1").toLowerCase();
}
function toHyphenate(str){
    var reg=/\B([A-Z])/g;
    return str.replace(reg,function(){
        console.log(arguments);
        return "-"+arguments[1].toLowerCase();
    });
}
console.log(toHyphenate("jjIjjjLkkkGFjjjUHUJJJkkkI"));

  replace方法里的参数,第一个是正则表达式,第二个是$1,$2,$3,,,,,,,,,等子表达式,如果第二个参数传的不是一个字符串,而是一个方法,在方法里会有一些默认参数,第一个是匹配的字符串,第二个是第一个子表达式匹配的字符串,第n个是第n个子表达式匹配的字符串,倒数第二个是匹配的下标,最后一个是整个字符串。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java帮帮-微信公众号-技术文章全总结

第十一天 面向对象-接口多态【悟空教程】

1374
来自专栏灯塔大数据

技术 | Python从零开始系列连载(十三)

如果是你自己定义函数,函数名要符合变量命名规则,并且不能是系统关键字(在jupyter中,打出系统关键字是绿色的)

782
来自专栏决胜机器学习

PHP数据结构(二十二) ——快速排序

PHP数据结构(二十二)——快速排序 (原创内容,转载请注明来源,谢谢) 一、概述 前面的插入排序,都是以移动的方式进行排序。快速排序,则是以交换的方式进行...

3579
来自专栏企鹅号快讯

Python数据类型之字典

大家好 今天我们来共同探讨 Python的另外一种数据类型 字典 技术要点: 字典的定义 字典的基本使用 字典的特性 对于常规字典的定义 相信大家应该很熟悉 常...

35714
来自专栏Android机动车

数据结构学习笔记——树(上)

之前一直介绍的是一对一的线性结构,可现实中还有多一对多的情况需要处理,这就是今天要介绍的一对多的数据结构——树。

652
来自专栏机器之心

从Zero到Hero,一文掌握Python关键代码

选自free Code Camp 机器之心编译 本文整体梳理了 Python 的基本语法与使用方法,并重点介绍了对机器学习十分重要且常见的语法,如基本的条件、循...

3247
来自专栏编舟记

Monad

什么是函数(Function)? 函数表达的映射关系在类型上体现在特定类型(proper type)之间的映射。

715
来自专栏我和PYTHON有个约会

22. 企业级开发基础3:类和对象

本节内容开始,讲解企业级项目开发基础部分:面向对象;主要从对象的抽象、对象的创建,对象中特殊的方法,面向对象的封装、继承、多态等各个方面来进行讲解。

583
来自专栏AI科技大本营的专栏

10分钟快速入门Python函数式编程

本文,你会了解到什么是函数式编程,以及如何用 Python 进行函数式编程。你还会了解到列表解析和其他形式的解析。

602
来自专栏Android知识点总结

再见kotlin----01语句控制

602

扫码关注云+社区