我希望能够将所有下划线后跟小写字母替换为带有sed的点。有可能吗?
替换
foo_bar
与
foo.bar
干杯
答案 0 :(得分:1)
您可以使用
echo 'foo_bar_BAR_space' | sed 's/_\([[:lower:]]\)/.\1/g'
请参阅online demo
详细说明:
_
- 下划线\([[:lower:]]\)
- 捕获与小写字母匹配的组并将其放入第1组.\1
- 替换:一个点+捕获到第1组的小写字母/g
- 匹配已定义模式的多次出现。