首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将camelCaseText转换为大小写文本

将camelCaseText转换为大小写文本
EN

Stack Overflow用户
提问于 2011-08-29 10:03:26
回答 25查看 117.9K关注 0票数 191

如何在JavaScript中将类似'helloThere‘或'HelloThere’的字符串转换为'Hello There‘?

EN

回答 25

Stack Overflow用户

回答已采纳

发布于 2011-08-29 10:11:46

代码语言:javascript
运行
复制
const text = 'helloThereMister';
const result = text.replace(/([A-Z])/g, " $1");
const finalResult = result.charAt(0).toUpperCase() + result.slice(1);
console.log(finalResult);

以第一个字母大写为例。请注意" $1"中的空格。

当然,如果第一个字母已经是大写的,那么您将有多余的空间可以删除。

票数 265
EN

Stack Overflow用户

发布于 2016-07-28 19:49:22

或者使用lodash

代码语言:javascript
运行
复制
lodash.startCase(str);

示例:

代码语言:javascript
运行
复制
_.startCase('helloThere');
// ➜ 'Hello There'

Lodash是一个很好的库,可以为许多日常的js和许多其他类似的字符串操作函数,如camelCasekebabCase等提供快捷方式。

票数 142
EN

Stack Overflow用户

发布于 2011-08-29 10:17:07

我遇到了类似的问题,并像这样处理它:

代码语言:javascript
运行
复制
stringValue.replace(/([A-Z]+)*([A-Z][a-z])/g, "$1 $2")

要获得更强大的解决方案:

代码语言:javascript
运行
复制
stringValue.replace(/([A-Z]+)/g, " $1").replace(/([A-Z][a-z])/g, " $1")

http://jsfiddle.net/PeYYQ/

输入:

代码语言:javascript
运行
复制
 helloThere 
 HelloThere 
 ILoveTheUSA
 iLoveTheUSA

输出:

代码语言:javascript
运行
复制
 hello There 
 Hello There 
 I Love The USA
 i Love The USA
票数 62
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7225407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档