我如何转换字符串既像'helloThere'或'helloThere'到'HelloThere'在JavaScript?
当前回答
下面是使用正则表达式演示驼峰大小写字符串到句子字符串的链接。
输入
myCamelCaseSTRINGToSPLITDemo
输出
我的骆驼案例字符串分裂演示
这是一个将驼峰格式转换为句子文本的正则表达式
(?=[A-Z][a-z])|([A-Z]+)([A-Z][a-rt-z][a-z]\*)
用1美元2美元代替。
单击可查看正则表达式的转换
其他回答
输入 javaScript
输出 Java脚本
var text = 'javaScript';
text.replace(/([a-z])([A-Z][a-z])/g, "$1 $2").charAt(0).toUpperCase()+text.slice(1).replace(/([a-z])([A-Z][a-z])/g, "$1 $2");
此解决方案也适用于不在[A-Z]范围内的其他Unicode字符。例如:Ä, Ö, Å。
let camelCaseToTitleCase = (s) => (
s.split("").reduce(
(acc, letter, i) => (
i === 0 || console.log(acc, letter, i)
? [...acc, letter.toUpperCase()]
: letter === letter.toUpperCase()
? [...acc, " ", letter]
: [...acc, letter]
), []
).join("")
)
const myString = "ArchipelagoOfÅland"
camelCaseToTitleCase(myString)
const text = 'helloThereMister'; const result = text.replace(/([A-Z])/g, " $1"); const finalResult = result.charAt(0).toUpperCase() + result.slice(1); console.log (finalResult);
第一个字母大写——举个例子。注意“$1”中的空格。
当然,如果第一个字母已经大写了,你就有多余的空间可以删除。
下面是使用正则表达式演示驼峰大小写字符串到句子字符串的链接。
输入
myCamelCaseSTRINGToSPLITDemo
输出
我的骆驼案例字符串分裂演示
这是一个将驼峰格式转换为句子文本的正则表达式
(?=[A-Z][a-z])|([A-Z]+)([A-Z][a-rt-z][a-z]\*)
用1美元2美元代替。
单击可查看正则表达式的转换
添加了另一个ES6解决方案,我更喜欢上面的一些想法。
https://codepen.io/902Labs/pen/mxdxRv?editors=0010#0
const camelize = (str) => str
.split(' ')
.map(([first, ...theRest]) => (
`${first.toUpperCase()}${theRest.join('').toLowerCase()}`)
)
.join(' ');
推荐文章
- 我如何使用Jest模拟JavaScript的“窗口”对象?
- 我应该如何从字符串中删除所有的前导空格?- - - - - -斯威夫特
- 我如何等待一个承诺完成之前返回一个函数的变量?
- 在JavaScript中根据键值查找和删除数组中的对象
- 使嵌套JavaScript对象平放/不平放的最快方法
- 如何以及为什么'a'['toUpperCase']()在JavaScript工作?
- 有Grunt生成index.html不同的设置
- 文档之间的区别。addEventListener和window。addEventListener?
- 如何检查动态附加的事件监听器是否存在?
- 将整数转换为字符串,以逗号表示千
- 如何写setTimeout与参数Coffeescript
- 将JavaScript字符串中的多个空格替换为单个空格
- printf()和puts()在C语言中的区别是什么?
- JavaScript: override alert()
- 重置setTimeout