1

次のような XML があるとします。

<a>
<b>...</b>
<c>...</c>
<c>...</c>
<d>..</d>
</a>

<c>...</c> の最初の出現のみを <e>...</e> に変更するように (Mac で) sed に指示するにはどうすればよいでしょうか。開始タグと終了タグ?

ありがとうございました

4

2 に答える 2

4

これはそれを行う必要があります:

sed '1,/<c>/s/^<c\(.*\)c>$/<e\1e>/'
于 2013-04-19T19:43:29.670 に答える
1

次のように sed を使用できます。

sed -E '1,/<c>.*<\/c>/s#<c>(.*)</c>#<e>\1</e>#' inFile

ライブデモ: http://ideone.com/fzsZg5

于 2013-04-19T19:43:36.593 に答える