我有一个包含 PascalCase 文本的字符串,我需要从中提取第一个单词并将其转换为小写:
assert firstWord('PmdExtension') == 'pmd'
assert firstWord('PMDExtension') == 'p'
assert firstWord('Pmd') == 'pmd'
assert firstWord('CodeQualityExtension') == 'code'
static String firstWord(String word) {
return '???'
}
让我们只关注有效的 PascalCase 标识符(没有任何其他字符、数字并且总是以大写字母开头)。
我的问题的简单而干净的解决方案是什么?
我试过了
word.split(/[A-Z]/).first().join(' ')
但它会删除所有大写字母,而我需要保留它们。