如何将虚线字符串转换为空格和大写字母?

B S*_*ven 3 osx bash string

给定字符串foo-bar,将其转换为什么好方法Foo Bar

使用 Bash、OSX。

小智 5

首先将破折号更改为空格,例如: sed 's/-/ /g'

将第一个字母大写已经解决了(给它们投票;或者只是将此问题标记为该问题的重复项)。

然后将它们组合起来: sed -e 's/-/ /g' -e 's/\b\(.\)/\u\1/g'

$ echo "foo-bar-baz-nonce" | sed -e 's/-/ /g' -e 's/\b\(.\)/\u\1/g'
Foo Bar Baz Nonce
$ 
Run Code Online (Sandbox Code Playgroud)

  • 显然这在 OSX 上不起作用。我得到“foo uar uaz nonce”。 (3认同)