0

誰かがsedを使用して引用符内のすべての文字を大文字にする方法を説明してもらえますか? たとえば、「abcd1234」は「ABCD1234」になります。引用符内のテキストの長さは可変です。答えだけでなく、説明を探しています。

編集:これをテキストファイルで使用します。次のようなテキスト ファイルがあるとします。

大文字にしたくないテキストと「大文字にしたいテキスト」およびその他のテキストと「時折引用されたテキストとおそらく数字」...

4

2 に答える 2

2

これは のバージョンに依存するかもしれませんsedが、私が手元にあるもの (GNU sed バージョン 4.1.5) では、 と書くことができますs/"[^"]*"/\U\0/。たとえば、次の Bash コマンドは次のようになります。

sed 's/"[^"]*"/\U\0/g' <<< 'foo "bar" baz'

これを印刷します:

foo "BAR" baz

を除いて、説明することはあまりありません\U。これは、replacement-string の後続のテキストを大文字にする特別な機能であり、どちらか\Eまたは end-of-string までです。

于 2013-10-16T23:58:48.060 に答える