読んで検索しましたが、何が問題なのかわかりません。スペース、文字列00011、スペースまたは新しい行を一致させたい。
sed 's:\(\s\)\(00011\)\([\s\n]\):\1$03\3:g'
編集:データは次のとおりです。
ADD 00000 00001 00011
LSH 00011 00100 01111
ADD 00011 10100 00010
JSR 00011101000111010101100010
そして、$03
置き換える文字列だけが必要です。00011
私は次のような結果を得たいと思います:
ADD 00000 00001 $03
LSH $03 00100 01111
ADD $03 10100 00010
JSR 00011101000111010101100010
ありがとう
ベストアンサー1
sedは一度に1行ずつ処理し、各行を処理するときに改行文字を削除します。
$
したがって、目的の操作を実行するには、リテラル改行の代わりに行末アンカー()を一致させる必要があります。
これは働きます:
sed 's:\(\s\)\(00011\)\(\s\|$\):\1$03\3:g'