在两个单词之间添加一个空格

ede*_*iss 4 javascript

我有一些像"浅紫色"和"暗红色"这样的词,它们存储为"LightPurple"和"DarkRed".如何检查像"LightPurple"这样的单词中的大写字母,并在"Light"和"Purple"之间加上一个空格以形成"Light Purple"一词.

在此先感谢您的帮助

Roc*_*mat 12

您可以使用正则表达式在大写字母旁边的小写字母处添加空格.

像这样的东西:

"LightPurple".replace(/([a-z])([A-Z])/, '$1 $2')
Run Code Online (Sandbox Code Playgroud)

更新:如果你有超过2个单词,那么你需要使用g标志,以匹配它们.

"LightPurpleCar".replace(/([a-z])([A-Z])/g, '$1 $2')
Run Code Online (Sandbox Code Playgroud)

更新2:如果尝试拆分单词CSVFile,那么您可能需要使用此正则表达式:

"CSVFilesAreCool".replace(/([a-zA-Z])([A-Z])([a-z])/g, '$1 $2$3')
Run Code Online (Sandbox Code Playgroud)

  • @andyb :( facepalm)好吧,我确实有一个要求,但从正则表达式的角度来看.我确实有一个javascript和/或另一种语言的相同实现(请参阅我在这个问题中的答案).但是,危险品使用正则表达式的方式是如此整洁,所以我值得采用它而不是30行代码.无论如何,我会发布一个新问题来解决这个问题,因为它值得知道答案. (2认同)