2017-01-19 17 views
0

すべてのアンダースコアと小文字の後にsedのドットを置き換えたいと考えています。出来ますか?アンダースコアの後ろに小文字を付けてください。

あなたは使用することができます

foo.bar

乾杯

+1

私は 'sed 's/_ \([a-z] \)/。\ 1/g''がうまくいくと思います。 –

+4

@WiktorStribiżewまたはロケールの問題を避けるために '[[lower:]]' –

答えて

1

foo_bar

交換

echo 'foo_bar_BAR_space' | sed 's/_\([[:lower:]]\)/.\1/g' 

online demo

詳細を参照してください:

  • _から
  • \([[:lower:]]\)を強調 - キャプチャグループ小文字を照合し、グループ1で
  • .\1を置くこと - 交換:ドット+小文字をグループ1に取り込まれた手紙
  • /g - 定義されたパターンの複数の出現と一致します。
関連する問題