"NUL" karakterlerini kaldırma


98

Not defterimde böyle karakterler var ++

NUL'lerin npp ekran görüntüsü

Tüm satırı kopyalamaya çalıştığımda, aslında "NUL" a kadar her şeyi kopyalıyorum:

File:1

Yapmak istediğim, boş olanları değiştirmek, hiçbir şey olmak, böylece tüm satırımı kopyalayabilirim. Belki notepad ++ 'ya (veya yardımcı olabilecek başka bir programa) bu karakterleri değiştirmesini söyleyen herhangi bir anahtar kelime vardır? Onu seçtiğimde, Sağ Tıkla ve ardından "temizle" yi kullanın, gitti - ama tek tek yapmak istemiyorum.

Bu sorunun nedenini ortadan kaldırmak umurumda değil, sadece etkisi (NUL'lar)

Yanıtlar:


107

Bu yardımcı olabilir, dosyalarımı şu şekilde kurardım: http://security102.blogspot.ru/2010/04/findreplace-of-nul-objects-in-notepad.html

Temel olarak \ x00 karakterleri normal ifadelerle değiştirmeniz gerekir


Evet, aradığım buydu. Çok teşekkürler :)
— user2618929

7
Lütfen unutmayın, "\ x00", "\ 00" veya "\ 0" denemelisiniz. Benim için \ x00 ve \ 00 çalışmadı. Değiştirme karakteri için \ 0 kullanmam gerekiyordu.
— Hooplator 15

1
@JohnAugust bunun için çok teşekkür ederim. \ x00 "normal" boşlukları ve NUL karakterlerini bulmaya devam etti.
— Steffen Winkler

Thx, çok satırlı bir metin bloğu için .dmp dosyasında arama yapmak istedi. ancak ne yazık ki çöplüğün boyutundan dolayı muhtemelen not defteri benim için çöktü
— Mellester

38

Ara -> Değiştir -> Ne Bul: \ 0 Değiştir: "boş" Arama modu: Genişletilmiş -> Tümünü değiştir'e tıklayın


Uzatma ne için?
— rimalroshan

@rimiro, özel olarak kaçan karakterlerin (\ n vb. gibi temel normal ifade meta karakterleri) yalnızca yazılan karakterlerle eşleştirilebileceği anlamında genişletildi.
— twobob

9

Ben de aynı sorunu yaşıyordum. Yukarıdakiler beni doğru yola soktu, ancak benim durumumda tam olarak doğru değildi. Ne işe yaradı yakından ilgiliydi:

  • Dosyanızı Notepad ++ ile açın
  • Control-A yazın (tümünü seçin)
  • Type Control-H (değiştir)
  • 'Ne Bul' türünde \x00
  • "Değiştir" bölümünde BOŞ bırakın
  • 'Arama Modu'nda' Seçildi 'Genişletilmiş'
  • Ardından 'Tümünü Değiştir'e tıklayın

5

Bul ve Değiştir'i deneyin. Metin bul kutusuna \ x00 yazın , Normal ifade seçeneğini işaretleyin. Değiştir metin kutusunu boş bırakın ve tümünü değiştir seçeneğine tıklayın. Bul ve değiştir için kısayol tuşu ctrl + H'dir.


6
\ x00 ile bul. Normal ifade seçeneğini işaretlemeniz gerekebilir.
— Miller

Normal bir ifade kullanmak zorundasınız, bu cevap yanlış çünkü belli ki özel bir karakterin geçmişini aynen böyle kopyalayabilirsiniz
— mahieddine

SO'nun sorusuna göre cevabı veriyordum, o notepad ++ not defterinde soruyor. Neden insanlar benim cevabıma oy vermiyor ve diğer insanlar AlexShumilov'un cevabını yükseltiyor.
— Miller

2

\ X00 kullanmayı denedim ve C # ve Regex kullanırken işime yaramadı. Aşağıdakilerle başarılı oldum:

//The hexidecimal 0x0 is the null character  
mystring.Contains(Convert.ToChar(0x0).ToString() );  

// This will replace the character
mystring = mystring.Replace(Convert.ToChar(0x0).ToString(), "");  

1
Bunun Notepad ++ ile ne ilgisi var?
— ChrisWue

OP notepad ++ veya yardımcı olabilecek başka bir program hakkında soru sordu. Eğer bazı ekstra kod ile cevap güncellemek misiniz o başkaları (yani Acımasız gibi bir şey, sürücüden metin dosyasını okumak metin dosyasına arka tasarrufu, nul karakter yerine Net newbie yardımcı olabilir böylece tamamlamak yapmak için bu ve talimatları VS olmadan C # kodu nasıl başlatılır, örneğin sadece csc.exe kullanılarak).
— omegastripes

2

Notepad ++ 'ı açın
Değiştir'i seçin (Ctrl / H)
Neyi bulun: \ x00 Şununla
değiştir:
Radyo düğmesine tıklayın Normal ifade
Tümünü Değiştir'e tıklayın


-1

Tek bir boş karakteri vurgulayın, değiştirmeye gidin - genellikle vurgulanan metni otomatik olarak bulma kutusuna ekler. Değiştir kutusuna bir boşluk girin veya boş bırakın.


8
Bu, Notepad ++ 'daki NUL karakteriyle çalışmaz. BEL gibi diğer birçok ASCII özel karakteriyle çalışır, ancak NUL yalnızca Genişletilmiş kaçış kodları veya RegEx kullanılarak bulunabilir.
— Ayelis
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.