JavaScript如何拆分首字母大写拼接的无逗号字符串为独立单词
实现方案
你可以通过以下两种常用方案实现驼峰字符串按大写字母拆分的需求:
方案1:正则表达式实现(推荐,代码简洁)
利用正向零宽断言匹配大写字母前的空位置,插入空格后去除首尾多余空格即可:
let str = "WishYourLuck"; // 匹配所有大写字母前的位置,替换为空格后去除首尾空格 const res = str.replace(/(?=[A-Z])/g, ' ').trim(); console.log(res); // 输出:Wish Your Luck
说明:该方案同时兼容首字母大写、首字母小写的驼峰字符串,数字、特殊符号不会被误判触发拆分。
方案2:遍历字符实现(易理解,兼容性强)
逐个遍历字符串字符,遇到大写字母时先拼接空格再拼接当前字符:
let str = "WishYourLuck"; let res = ''; for (const char of str) { // 判断当前字符为大写字母时,前面加空格 if (/[A-Z]/.test(char)) { res += ' ' + char; } else { res += char; } } res = res.trim(); console.log(res); // 输出:Wish Your Luck
说明:如果需要排除非字母类的大写字符,可以把判断条件替换为char === char.toUpperCase() && char !== char.toLowerCase(),避免数字、符号被误处理。
内容的提问来源于stack exchange,提问作者adtybrhn
相关产品推荐
相关产品推荐

