2つの単語を1行に置き換えようとしても機能しません。たとえば、「今日は大学に行く最初の日です」は、「今日は大学に行く最初の日です」と置き換える必要があります。
私が試したことは次のとおりです。
sed 's/\([a-zA-z0-9]\)\([a-zA-z0-9]\)\([a-zA-z0-9]\)/\3\2\1/' filename.txt
私は何が間違っていましたか?
答え1
この試み:
sed -r 's/([a-zA-Z0-9]+) ([a-zA-Z0-9]+) ([a-zA-Z0-9]+)/\3 \2 \1/'
-r
問題は、sedコマンドでオプションやエスケープ記号なしで拡張正規表現を使用しようとしていることです。
正規表現も完全に正確ではありません。
指定した範囲が無効です。A-z
範囲はありません。 yes A-Z
。
また、空白を忘れて、単語が複数文字であることを指定していません。