我想将“FileNotFound”更改为“File Not Found”。
显而易见的
"FileNotFound".split(/[A-Z]/g).join(" ")
返回“ile ot ound”,这让我听起来像是有某种言语缺陷。
答案 0 :(得分:0)
对不起自我回答,但我觉得这很整洁。 更多欢迎回答。
最明显的解决方案,虽然我找到了最后一个解决方案,但
"FileNotFound".replace(/[A-Z]/g, a => " " + a).trim()
更具教育意义的解决方案(imo)是:
"FileNotFound".split(/(?=[A-Z])/g).join(" ")
?=
表示“前瞻”,所以“匹配空字符串,只要后面跟一个大写字母”。这个解决方案可能更慢,但不会干扰前面任何预先存在的白色空间,更容易推广。
答案 1 :(得分:0)
整洁的解决方案:
console.log("FileNotFound".replace(/([A-Z][a-z]+)(?=[A-Z])/g, "$1 "));