sed:用Camel替换CamelCase:Case

oct*_*pus 2 regex bash sed

我试图在小写字母后面跟一个大写字母插入冒号,并在第一个单词周围添加字符:(从CamelCase<Camel>:Case)

这是我最好的镜头,基于:如何使用sed在大写和小写之间传输字符

echo CamelCase | sed -e 's/\([a-z][A-Z]\)/\1:/g'

CamelC:ase
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

anu*_*ava 6

试试这个sed:

echo 'CamelCase' | sed -e 's/\([a-z]\)\([A-Z]\)/\1:\2/g'
Camel:Case
Run Code Online (Sandbox Code Playgroud)

更新:根据评论:

echo 'CamelCase' | sed -e 's/\([A-Z][a-z]*\)\([A-Z]\)/<\1>:\2/g'
<Camel>:Case
Run Code Online (Sandbox Code Playgroud)