Bir dize (dize1) başka bir dize (dize2) ve tersi ile tüm oluşumları değiştirmek istiyorum. Kesin olmak gerekirse, uzun bir belgem var ve bu dizeler birçok kez oluşur. Şu anda yaptığım şey, string1 -> string3, sonra string2 -> string1 ve son olarak string3 -> string2'nin yerini almak.
Emacs'ta bunu yapan bir işlev olup olmadığını merak ediyorum. Diğer çözümler de memnuniyetle karşılanmaktadır.
Düzenleme : Bu aslında yorumda bağlantılı sorunun bir kopyasıdır. Ancak sorun şu ki, bu sorunun kabul edilen cevabı her zaman işe yaramıyor (aşağıdaki açıklamaya bakınız). Bu kabul edilen cevabın yazarının cevabını düzeltmesini veya başka bir çözüm ortaya çıkmasını beklemenin daha iyi olacağını düşünüyorum. İkinci olarak sorumu göndermeden önce soruyu araştırdım ve bu soru ortaya çıkmadı. Farklı ifadeler kullandıkları için iki yinelenen soruya sahip olmanın bazen yararlı olduğunu düşünüyorum ve bir kullanıcı yinelenen bir tane bulursa, doğru olanı bulabilir.
Edit 2: Metni değiştirmek için Arama / değiştirme benzeri özelliğinin kabul edilen cevabı şimdi iyi görünüyor.
backwards
ve region-noncontiguous-p
) perform-replace
burada çalışmasını sağlar (emacs 24.3). Diğer cevabı düzenlemeden önce bir fırsat bulduğumda emacs 25'te test edeceğim.