Notepad ++ uygulamasında boş satırları kaldırma


384

Notepad ++ uygulamasında boş satırları nasıl değiştirebilirim? Bir bulmayı ve bulmayı boş satırlarla değiştirmeyi denedim ve yerine hiçbir şey koymadım, ama işe yaramadı; muhtemelen regex gerekir.

Yanıtlar:


395

Normal bir ifade gibi bir şeye ihtiyacınız var.

ExtendedModda olmalısın

Tüm satırların tek bir satırda bitmesini istiyorsanız kullanın \r\n. Boş satırları basitçe kaldırmak istiyorsanız , \n\r@Link başlangıçta önerildiği gibi kullanın .

Her iki ifadeyi de hiçbir şeyle değiştirmeyin.


21
Önce arama modunda "genişletilmiş" i seçmelisiniz.
q0987

14
Hatlarınızın birleştirilmemesi için arama yapmanız \r\n\r\nve bununla değiştirmeniz gerekir \r\n.
Robert Kaucher

1
Aşağıdaki @ BoltClock'un yorumuna bakın. Ayrıca, dosyanız Unix satır sonlarıyla kaydedilmişse, bul ve değiştir işlemlerini gerçekleştirmeden önce dosyayı Düzenle> EOL Dönüştürme> Windows Formatında Windows satır sonlarına dönüştürebilirsiniz.
Büyük McLargeHuge

9
Değiştirmeye regex sadece boşluk ve sekmeler kullanarak veya hiçbir şey denemede ile satırları kaldırmak istiyorsanız maç için \r\n\W*\r\nve ile değiştirin\r\n
myster

2
@ ST3 hmm ne düşünüyordum, Bu çok daha iyi: (\r\n|\r|\n)(\s*(\r\n|\r|\n))+ve \r\nburada eylem görmek ile değiştirin : regex101.com/r/qD9dB1/1
Myster

567

6.5.2 sürümünden itibaren bunu yapmanın yerleşik bir yolu var.

Edit -> Line Operations -> Remove Empty Lines veya Remove Empty Lines (Containing Blank characters)

Boş satırları kaldırmanın ekran görüntüsü


Ne yazık ki bu seçiminizi dikkate almaz, sadece bazılarını seçmiş olsanız bile dosyadaki tüm boş satırları siler.
Fabio, Reinstate Monica'ya

Bu bir defalık bir işlemse, seçilen satırları yeni notepad ++ sekmesine çıkarabilir ve bu işlemi orada gerçekleştirebilirsiniz. 5 saniye boyunca kopyalayıp yapıştırma işlemi. O zamana kadar gerçekleştirilemeyen herhangi bir geçici çözüm bence israftır. Ama her gün 100 kez ... bunu yapıyor eğer
creed

Bunu kullanıyordum (kısayolumu bile
atadım

122

Başlıklı bir menü ekleyen bir eklenti var TextFX. Baş döndürücü bir dizi hızlı metin düzenleme seçeneğine ev sahipliği yapan bu menü, kişiye hızlı kodlama değişiklikleri yapma olanağı verir. Bu menüde, Alıntıları Bırak, Boş Satırları Sil, Metni Aç ve Yeniden Sar gibi seçimleri bulabilirsiniz

Aşağıdakileri yapın:

TextFX > TextFX Edit > Delete Blank Lines
TextFX > TextFX Edit > Delete Surplus Blank Lines

7
Ne zaman olduğundan emin değilim, ancak bu eklentinin şimdi varsayılan olarak yüklendiği anlaşılıyor. Biraz konu dışı, ancak altındaki diğer inanılmaz kullanışlı özelliklerden biri, TextFX > TextFX Toolssatır sıralamadır, isteğe bağlı olarak kopyaları kaldırır. sort -uCygwin veya unxutils veya benzeri olmayan bir Windows kutusunda Unix yapmanın çok kullanışlı bir yolu .
Cam Jackson

3
İşte TextFx Eklentisine bir bağlantı. Bunu çok kullanışlı buldum. Kullanın: Settings > Import > plugin...ve kurmak için dll dosyasını bulun. Bu bir menü öğesi haline geliyorPlugins
Nicholas Pickering

1
bu tüm açık belgelerde mi yoksa her seferinde bir belge üzerinde mi çalışacak?
Sahipsiz

76
  1. notepad ++
  2. Ctrl-H
  3. Normal İfadeyi Seç
  4. ^[ \t]*$\r?\nNeyi bulmak için girin , yerine boş bırakın. Bu boşlukla başlayan ve satır başı ile biten tüm satırlarla eşleşir (bu durumda bir pencere crlf)
  5. Yalnızca boş satırlarla nasıl eşleştiğini kendiniz görmek için Sonrakini Bul düğmesini tıklayın.

1
Bir makroda kolayca çalışmasını sağlamak için diğer yöntemleri yerine bu yöntemi kullanmak zorunda kaldım. Teşekkür ederim.
Mafu Josh

5
birden fazla boş satır nedeniyle daha kısa ve daha az değiştirme ihtiyacı aynı anda değiştirilecektir: ^ \ s * $ \ r? \ n
njank

30
  1. Ctrl + h (Değiştirme kısayolu) tuşlarına basın .
  2. Gelen Ne Bul bölge, tip ^\R(tam boş hatlar için) ya da ^\h*\R(sadece, kurusıkı boş hatlar için).
  3. Leave değiştirin bölge boş .
  4. Kontrol Wrap etrafında seçeneği.
  5. Seç Düzenli ifade arama modunu.
  6. Tümünü Değiştir düğmesine tıklayın.

resim açıklamasını buraya girin


1
Bu herhangi bir sorun veya değiştirmek için ek ayarlar olmadan benim için çalıştı. Teşekkürler!
1919

19

Aşağıdaki ekran görüntüsünde gösterildiği gibi tekniği takip edebilirsiniz:

  • Ne buldun: ^\r\n
  • Şununla değiştir: keep this empty
  • Arama modu: Regular expression
  • Etrafında sarın: seçili

resim açıklamasını buraya girin

NOT: * nix dosyaları için\n


17

Bu benim için çalıştı:

  1. ctrl + h(Değiştirmek için kısayol) tuşuna basın
  2. find whatKutuya aşağıdaki normal ifadelerden birini yazın . [\n\r]+$veya^[\n\r]+
  3. Replace withKutuyu boş bırakın
  4. In Search ModeseçinRegex
  5. Replace All

    Bitti'yi tıklayın !

Büyük .csv dosyalarımı bozmayan tek çözüm bu. Teşekkürler!
veuncent

1
artı bir çünkü sonunda değiştirmek için kısayolu biliyorum :-D
Betlista

14

Notepad ++ 'da CTRL + H tuşlarına basın, arama modunda "Genişletilmiş (\ n, \ r, \ t ...)" radyo düğmesini tıklayın, ardından "Aranan" kutusuna yazın: \ r \ n (CR LF kısaltması) ) ve "Şununla değiştir" kutusunu boş bırakın.

Sonunda hepsinin yerine geç


aslında, denedim, cevabımda açıklamamı görüyorum. Bir şeylerin üzerindeydin!
Brad

3
Dosyanız yalnızca Unix satır sonlarıyla kaydedilmişse, satır sonlarının Windows (CRLF) olduğunu varsayar \n.
BoltClock

@Brad: () "CR LF kısa" arasında yazdım, codetrek \ n CR olduğunu düşünmek istemiyordu, dolayısıyla düzenleme.
Bassem

Yanlış cevap, tüm satırları tek bir satıra koyar.
m0skit0

12

Normal ifadeden ya da durumundan emin değilim.

CTRL + A'ya ne dersiniz, TextFX menüsünü seçin -> TextFX Düzenle -> Boş Satırları Sil ve giden tüm boş satırları ihlal edin.

Yan not - çizgi boşsa yani boşluk içermiyorsa, bu işe yarayacaktır


12

Aşağıdaki normal ifadeyi arayabilir ^(?:[\t ]*(?:\r?\n|\r))+ve boş alanla değiştirebilirsiniz


11

Ctrl + H.

Bul - \ r \ r yerine - \ r.


Bu benim için çalışıyor, ekstra satır kaldırma, çift tek yerine bulmak yerine \ r. Teşekkürler!!
genpet

Bu iyi çalıştı, ancak tüm \ r \ r örnekleri gitmeden önce belgemde birkaç kez çalıştırmak için gerekli olduğunu buldum. Neden olduğundan emin değilim.
Hawkwing

7

Boş satırlar sekmeler veya boşluklar içeriyorsa, bu kesinlikle çalışmaz. Birçok web sayfası (ör. Http://www.guardian.co.uk/ ) hatalı bir HTML düzenleyicisinin bir sonucu olarak bu beyaz çizgileri içerir.

Aşağıdaki gibi normal ifadeyi kullanarak beyaz alanı kaldırın:

kalıbı değiştir: [\ t] + $.

burada [\ t] sekme veya boşlukla eşleşir. '+' bir veya daha fazla tekrarla eşleşir ve '$' satır sonunu işaretler.

Sonra tek veya fazladan boş satırları kaldırmak için notepad ++ / textFX kullanın. Bu boş satırların verilen bağlamda önemli olmadığından emin olun.


5

resim açıklamasını buraya girin

Bazen \ n \ r vb işe yaramaz, burada, aslında normal ifadenizin ne olması gerektiğini anlamak için.

Bu hilenin avantajı: Bir kerede birden fazla dosyada değiştirmek istiyorsanız, bu yönteme ihtiyacınız vardır. Yukarıdaki çalışmaz ...


5

1) Ctrl + H(Veya Search 🠆 Replace..) Değiştir penceresini açmak için.

2) 'Normal ifade'yi seçin'Search Mode'

3) 'Bulunacak' yazın ^(\s*)(.*)(\s*)$ve 'Şununla Değiştir' yazın\2

  • ^ - Satır karakterinin başlangıcıyla eşleşir
  • (\s*) - Boşluk karakterleriyle eşleşir
  • (.*) - Herhangi bir karakterle eşleşir
  • (\s*) - Boşluk karakterleriyle eşleşir
  • $ - Satır sonu karakteriyle eşleşir
  • \2 - 2. braketin eşleşen yarışmasını belirtir

resim açıklamasını buraya girin Normal ifade hakkında daha fazla bilgi için https://www.rexegg.com/regex-quickstart.html adresine bakın .


4
  1. Düzenle >> Boş İşlemler >> Satır Aralığı ve Sondaki Alanları Kes (boş satırlardaki siyah sekmeleri ve boşlukları kaldırmak için)
  2. Ctrl+ Hpencereyi değiştirmek ve deseni değiştirmek için: ^\r\nhiçbir şey kullanmadan (normal ifadeyi seçin)

Not: 1. adım, sekmeler ve boşluklar aracılığıyla yapılan kod zenginleştirmenizi kaldıracaktır


4

CTRL + A, TextFX menüsünü seçin -> TextFX Düzenle -> Boş Satırları Sil, yukarıda önerildiği gibi çalışır.

Ancak çizgiler biraz boşluk içeriyorsa, imleci o satıra taşıyın ve CTRL + H yapın. "Aranan:" sn boş alanı gösterir ve "Şununla değiştir" bölümünde boş bırakın. Şimdi tüm boşluklar kaldırıldı ve şimdi CTRL + A'yı deneyin, TextFX menüsünü seçin -> TextFX Edit -> Boş Satırları Sil


4

/n/rbelirli bir satır sonu tipini varsayar. Herhangi bir boş satırı hedeflemek için şunları da kullanabilirsiniz:

^$

Bu diyor - başlayan ve daha sonra biten herhangi bir çizgi. Bu daha çok bir şey. Aynı boş dizeyle değiştirin.


3

Kombine olanı cevap olarak görmedim, bu yüzden ^ \ s + $ için arama yapın ve {hiçbir şey} ile değiştirin

^\s+$ means
  ^ start of line
  \s+ Matches minimum one whitespace character (spaces, tabs, line breaks)
  $ until end of line

birden fazla satır istiyorsanız deneyebilirsiniz: ^\s+^(\S)ve ile değiştirin \1.
jiggunjer


1

Boş satırlardaki beyaz boşluğu kaldırmak için kolay bir alternatif:

  1. TextFX> TextFX Edit> İzleyen Uzayları Kes

Bu, boş satırlardaki arka boşluklar da dahil olmak üzere tüm arka boşlukları kaldıracaktır. Sondaki boşlukların önemli olmadığından emin olun.


0

Yukarıdaki ifadelerden ve genişletilmiş ifadelerden birkaçı benim için çalışmadı, ancak "$ \ n $" normal ifadesi işe yaradı.


0

bu iş benim için:

SEARCH:^\r  
REPLACE:            (empty)

1
Bu linux eol \nve windows eol için çalışmaz\r\n
Toto
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.