2013-07-18 23 views
33

Notepad ++ uygulamasında, diğer her satırı veya nth satırı silmek için bir yol var mı? Büyük bir veri listem var ve boyutunu küçültmem gerekiyor.Not Defteri'nde diğer her satırı silme ++

veri kendisi önemli değil ve 10.000 öğe listesi dışında ben sadece (veya her otomatik olarak her silecektir Notepad ++ bir özellik olup sanmıyorum 5.000

+1

Notepad değiştirin ++ böyle bir işlevi vardır ancak az sayıda sadece olurdu her satırı silin bir programı yazma – zoran404

+0

Bir toplu iş dosyası benim durumum için en basit seçenek olabilir düşünüyorum – fightstarr20

cevap

69

Ben Notepad ++ ile yapmak denemek için garip bir fikir olduğunu düşünüyorum, fakat bir düello gibi, bu yüzden karar: Eğer pencerelerde ise

, burada cevap işe yarar mı Bir sıkma ver.

Değiştirme menüsünü açın, "Değiştir" kutusuna ([^\n]*\n)[^\n]*\n girin ve "Değiştir" kutusuna $1 girin. Ardından, arama modu için normal ifadeyi seçin, tümünü değiştir'i tıklayın ve her ikinci satır silinir.

Benzer bir şey yapmak isterseniz benzer ifadeler oluşturabilirsiniz. Örneğin, a n - 1 ile değiştirirseniz (([^\n]*\n){a})[^\n]*\n her nth satırın yerini alacaktır ve [^\n]*\n([^\n]*\n) tuhaf olanlar yerine satırları bile tutmanıza izin verecektir.

(Yani hiç zor değildi -. Yapmam gereken tek şey güncelleme benim eski Notepad ++ kurulum oldu), bir makro kullanmayı deneyebilirsiniz

+0

Teşekkürler, bu arada, telefonumda bir izleme uygulamasından GPS noktaları kullanıyordum, KML olarak dışa aktarılıyor ve Litchi Fly Hub'a aktarılıyor drone, ancak, birçok noktaya yol vardı ve bu onları azaltmak ve hala rota – drooh

0

bir seçim ihtiyaç nth) satır, ama kısa bir dönüşüm programı yazdıysanız, sadece birkaç dakika sürecektir.

yalancı kod şöyle görünecektir: Tam olarak sorunuza cevap, ama yardımcı olur umarım gelmez

1. Create a StreamReader and StreamWriter (make sure you are not trying to read from 
    and write to the same file) 
2. While (StreamReader is reading lines) increment i. You could mod it by whatever 
    number n you wanted in order to delete certain lines. Then have a conditional clause 
    that would write out if i%n == 0 or whatever you specify. 
3. Close the program. 

.

5

Sana bir unix tarzı platform üzerinde iseniz awk ile yapabilirsiniz düşünüyorum:

awk 'NR % 2 == 0' file > outfile 

NR satır numarası, yani hat 2 sopa ile bölünebilir ise bu sadece" diyecekler o yeni dosyada. "

batch file to keep one of ten lines

17

.

  1. Başlat Makro
  2. bastırın n-kat
  3. Shift + End
  4. basın silmek iki kere
  5. Durdurma dosyanın sonuna kadar Makro
  6. Çalıştır Makro kayıt kayıt
2

Bu konuya kendim rastladım. Ne de işlevini yerine/Bul kullanılarak, benim için çalıştı şudur:

  1. Ctrl F ve arama modunda
  2. değiştir "Extended (\ n \ r \ t seçmek gidin ..)"
  3. Aranan: \ n \ n ile
  4. değiştirin:. \ N
  5. Tüm
+0

tutmak başardı Güzel ve basit! "\ r \ n \ r \ yerine n "with" \ r \ n ", ama aynı kavramı –

İlgili konular