• 締切済み

viでの置換

if($b =~ /(?=A?B{1,2})/){  print "b\n"; } この文章中で?=の=だけ!に置換したいのですが :%s/?=\&=/!/g だとE486: パターンはみつかりませんでした: ?=\&=と表示されました. ですが, :%s/=A\&=/!/g だとうまくいきました.?がエスケープされてないから(素人目線ですが)と思い :%s/\?=\&=/!/g とすると E64:\? の後になにもありません E476: 無効なコマンドです 続けるにはENTERを押すかコマンドを入力してください となりました.なぜ:%s/?=\&=/!/gではダメなのでしょうか?

みんなの回答

  • x_jouet_x
  • ベストアンサー率68% (162/236)
回答No.1

> ?=の=だけ!に置換したい のであれば、 :%s/?=/?!/g ではダメなんですか?

garusu
質問者

補足

あ,なるほどw それもありますね △に含まれる□にマッチさせるというのを今日知ったので, 使ってみたかったんですw

関連するQ&A