javascript - 将字符串中数字之前的所有字母大写

标签 javascript

我需要将字符串开头的所有字母大写,以及字符串中出现的第一个数字之前的所有字母。

abc123 将成为 ABC123

abc123def 将是 ABC123def

首先,我找到字符串中第一个数字的索引:

var index = myString.search(/\d/);

然后我有一个 for 循环,我尝试更改该数字之前的每个字母:

for (var i=0; i<index; i++) {
    myString = myString.charAt(i).toUpperCase() + myString.slice(i+1);
}

问题在于代码在每个循环中删除了开头的字母。 我怎样才能做得更好?

感谢您的帮助

最佳答案

您可以通过以下代码来完成:

var str = "abc23mlk";
var index = str.search(/\d/);
if (index !== -1) {
    str = str.slice(0, index).toUpperCase() + str.slice(index);
}
console.log(str);

关于javascript - 将字符串中数字之前的所有字母大写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46886618/

相关文章:

javascript - 使用数组输入过滤对象

javascript - 如何循环所有具有键名的数据,包括一些文本

javascript - 播放多个轨道<音频>

javascript - Firebase 身份验证跟踪表?

javascript - react-devtools:默认情况下,DevTools 监听本地主机上的 8097 端口。如何定制?

javascript - 在angularJS onclick中添加两个数字

php - 从 Javascript OnClick 调用 PHP 页面时 AJAX 返回错误

javascript - 错误 : Audio playback was aborted IE 11 Windows 7

javascript - 添加数组中的所有元素

javascript - 如何使用 Jquery 从 Asp.net MVC 中的 CheckBox 中获取选定的值?