使用Lodash lowerCase方法时意外出现空格的解决咨询
解决Lodash lowerCase多余空格问题
Lodash的lowerCase方法会自动在小写字母后跟大写字母的位置插入空格,再加上连字符转空格的逻辑,偶尔会出现首尾多余空格。以下是几种解决办法:
最简方案:用
trim()直接去除首尾多余空格,保留中间需要的分隔空格:const result = _.lowerCase("rRRRR-R").trim(); console.log(result); // 输出 "r rrrr r"兼容多空格场景:如果担心特殊字符导致中间出现多个空格,可搭配正则统一处理:
const result = _.lowerCase("rRRRR-R") .replace(/^\s+|\s+$/g, '') // 清首尾空格 .replace(/\s+/g, ' '); // 把多空格替换成单个自定义实现逻辑:完全脱离
lowerCase,自己实现「转小写+连字符转空格+大小写分隔加空格」的需求:function customTransform(str) { return str .replace(/-/g, ' ') // 连字符替换为空格 .replace(/([a-z])([A-Z])/g, '$1 $2') // 小写接大写的位置加空格 .toLowerCase() // 整体转小写 .trim(); // 清理首尾空格 } console.log(customTransform("rRRRR-R")); // 输出 "r rrrr r"
内容的提问来源于stack exchange,提问作者Talha Israr
相关产品推荐
相关产品推荐

