2011-12-08 21 views
2

母音で始まるすべての母音を以下のように削除しようとしています。私が持っているsedコマンドは、母音があれば最初の単語を削除するだけです。私は以下の境界マーカーを考えて、gを使ってすべての単語をキャプチャしますが、それをしていません。母音ですべての言葉を得るにはどうすればいいですか?sed - 母音で母音だけを削除する

echo "Always take a Big Apple " | sed -r 's/\b^[AEIOUaeiou]\w*//g' 
+0

関連:[sedを - 母音で始まる印刷単語のみ](http://stackoverflow.com/questions/8429901/sed – razlebe

答えて

5

削除^

sed -r 's/\b[AEIOUaeiou]\w*//g' 

あなたはそれがワード境界上にあるように要求することを十分に、行の先頭にそれを固定する必要はありません。

+0

マイケルありがとう - 私は母音で "始まる"すべての単語を取得する必要があったと思いました - 明らかにそうではありません – frodo

1
echo "Always take a Big Apple " | sed -r 's/\b[AEIOUaeiou]\w*//g' 
+0

ありがとう...どのようにすればよいですか?母音で始まる印刷語だけを印刷するには、これを逆にしますか?私は入れてみました!上記のルールを逆転させると思ったのですが? – frodo

+0

@frodo: 'sed -r 's/\ b [^ AEIOUaeiou] \ w * // g'' –

1

このGNU sedのソリューションは、あなたのために働くかもしれない:

echo "Always take a Big Apple " | sed 's/\<[aeiou]\w*//Ig' 
関連する問題