Vim'de karışık vaka düzenli ifade değişimi


9

Sık sık çok sayıda karışık dava içeren bir dosyamın olduğu bir durumla karşılaşıyorum. Örneğin,

CamelCase and camelCase

Üretmek için bir Vim düzenli ifade değiştirme arıyorum,

AnotherCase and anotherCase

Şu anda çizgileri görsel olarak seçtikten sonra iki adımda yapıyorum,

:s/CamelCase/AnotherCase/g
:s/camelCase/anotherCase/g

Bu bir değiştirme adımında mümkün mü yoksa bir işlev gibi diğer seçeneklere bakmalı .vimrcmıyım?

Yanıtlar:


7

:SubvertTim Pope's Abolish.vim ile kullanmanızı öneririm

:%S/camelCase/anotherCase/g

Vimcasts bölüm: Supercharged ikame ile: Subvert


Bu eklenti bunu kolaylaştırdı. Kaputun altına bakmadım, ama deneyeceğimi düşündüm :%S/CamelCase/AnotherCase/g, ancak sadece yerini alır CamelCaseve camelCaseolduğu gibi bıraktı . Önemli değil, sadece hatırlanacak bir şey.
wsams

Herhangi bir büyük harf karakterin büyük harf olması gerekir, ancak küçük harf gerektiği gibi büyük harfle yazılabilir.
dash-tom-bang

3

Ayrıca saygıdeğer bir muhafaza var .

İle

:SubstituteCase#\ctoto\(Titi\)tata#\1Tutu#g

elde edersiniz:

 totoTitiTata -> titiTutu
 TotoTitiTata -> TitiTutu
 tototititata -> tititutu
 tototitiTata -> titiTutu
 TototitiTata -> TitiTutu 
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.