GNU/Linux >> Linux の 問題 >  >> Linux

GNU sed の先読み正規表現の何が問題になっていますか?

sed -i '/^foo/! s/^/bar/' file.txt
  • -i その場でファイルを変更
  • /^foo/! ! 以外の行でのみ次のアクションを実行します foo で始まる ^foo
  • s/^/bar/ 行頭を小節に変更

私の知る限り sed 先読みも後読みもありません。 perl など、同様の構文を持つより強力な言語に切り替えます .


GNU sed でサポートされていない perl 互換の正規表現 (PCRE) 構文を使用しています。SED 正規表現に従って正規表現を書き直すか、perl を使用する必要があります。

SED には先読みがないため、使用しようとしていた正規表現機能がサポートされていないことに注意してください。他の人が言及したように、他の機能を使用して SED で実行できます。


Linux
  1. 「sed」を追加しますか?

  2. SedですべてのCコメントを削除しますか?

  3. Gnomeはマルチメディアキーで何をしますか?

  1. C++:どの正規表現ライブラリを使用すればよいですか?

  2. poll() はタイムアウト 0 で何をしますか?

  3. GNU Diff のパーセンテージ値

  1. Makefile の ?=とは

  2. gnuplot で .gnu ファイルをプロットする

  3. sed による正規表現