行を調べて一致させるsed式を作成するにはどうすればよいですか
Id int
そしてに変更
Id string
これはその行の唯一のコンテンツ (Id int 以外は何もない) であり、他の行を変更してはなりません。
私は線に沿って何かを試しました
find . -type f -print0 | xargs -0 sed -i '' 's~^\([[:space:]]*\)"Id"[[:space:]]*"int"[:space:]]*$~\1"Id string"~g'
しかし、正規表現は間違っています。
ありがとう。
編集:
さらに明確にするために: の前Id
、 と の間にスペース (矛盾) がId
ありint
ます。したがって、タブや式の代わりに [[:space:]]* に一致する必要がありますs/^Id int$
一致する行は次のようになります
Id int
Id int
Id int
で置き換えることができます
Id string
Id string
Id string
つまり、スペースの数を保持する必要はありません