sedを使用して文字列を置き換えますが、部分文字列の場合は変更しないでください。

sedを使用して文字列を置き換えますが、部分文字列の場合は変更しないでください。

複数のファイルで文字列置換を実行したいと思います。

文字列はその形式のために特別であり、 use module_plotting 同様の文字列に遭遇したときに文字列を置き換えることを避けるべきですuse module_plotting_debug

ご回答ありがとうございます。

答え1

単語境界表現を使用してください。

sed 's/\<use module_plotting\>/use module_plotting_debug/'

幅がゼロのパターン\<\>、「単語」の境界、つまり単語以外の文字とのある単語文字の間、および単語文字を含む\<非単語文字の間で一致します\>

「単語文字」はランダムな英数字文字です(現在のロケールを考慮するとわかりません)。

私のものre_format(7)手動つまり、移植性[[:<:]]は良くなければなりませんが、私のシステムのGNUでは[[:>:]]機能しないようです。sed

関連情報