Rimozione dei caratteri "NUL"


94

Ho caratteri del genere nel mio blocco note ++

screenshot npp dei NUL

Quando cerco di copiare l'intera riga, in realtà sto copiando tutto fino a "NUL":

File:1

Quello che voglio fare è sostituire quelli nulli, essere niente, così posso copiare tutta la mia riga. Forse c'è qualche parola chiave che dirà a Notepad ++ (o qualsiasi altro programma che potrebbe aiutare) di sostituire quei caratteri? Quando lo seleziono, usa il tasto destro e poi "cancella", non c'è più - ma non voglio farlo uno per uno.

Non mi interessa rimuovere la causa di questo problema, solo l'effetto (NUL)

Risposte:


105

Questo potrebbe aiutare, ho usato per fi i miei file in questo modo: http://security102.blogspot.ru/2010/04/findreplace-of-nul-objects-in-notepad.html

Fondamentalmente devi sostituire \ x00 caratteri con espressioni regolari


Sì, è quello che stavo cercando. Grazie mille :)
user2618929

7
Tieni presente che devi provare "\ x00", "\ 00" o "\ 0". Per me, \ x00 e \ 00 non funzionavano. Dovevo usare \ 0 per il carattere di sostituzione.
Hooplator15

1
@ JohnAugust grazie mille per questo. \ x00 continuava a trovare spazi "normali" così come i caratteri NUL.
Steffen Winkler

Thx voleva cercare un file .dmp per un blocco di testo su più righe. tuttavia sfortunatamente il blocco note si è bloccato per me probabilmente a causa delle dimensioni della discarica
Mellester

38

Fare clic su Cerca -> Sostituisci -> Trova cosa: \ 0 Sostituisci con: "vuoto" Modalità di ricerca: Estesa -> Sostituisci tutto


A cosa serve l'estensione ??
rimalonfire

@rimiro esteso nel senso che i caratteri con escape speciale (metacaratteri di espressioni regolari di base come \ n eccetera) possono essere confrontati piuttosto che semplicemente con i caratteri digitati.
dueobob

9

Stavo avendo lo stesso problema. Quanto sopra mi ha messo sulla strada giusta, ma nel mio caso non era del tutto corretto. Ciò che ha funzionato era strettamente correlato:

  • Apri il tuo file in Notepad ++
  • Digita Control-A (seleziona tutto)
  • Digitare Control-H (sostituire)
  • Nel tipo "Trova cosa" \x00
  • In "Sostituisci con" lasciare VUOTO
  • In "Modalità di ricerca" selezionato "Esteso"
  • Quindi fare clic su "Sostituisci tutto"

5

Prova Trova e sostituisci. digita \ x00 nella casella di testo Trova, seleziona l'opzione Espressione regolare. Lascia vuota la casella di testo Sostituisci e fai clic su Sostituisci tutto. il tasto di scelta rapida per trovare e sostituire è ctrl + H.


6
trova con \ x00. Potrebbe essere necessario controllare l'opzione Espressione regolare.
Miller

Devi usare un'espressione regolare, questa risposta è sbagliata poiché ovviamente puoi copiare un carattere speciale proprio così
mahieddine

Stavo dando la risposta come da domanda di SO, sta chiedendo su notepad ++ notepad. Non so perché le persone votano la mia risposta e altre persone stanno alzando la risposta di AlexShumilov.
Miller

2

Ho provato a usare \ x00 e non ha funzionato per me quando ho usato C # e Regex. Ho avuto successo con quanto segue:

//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(), "");  

Cosa c'entra questo con Notepad ++?
ChrisWue,

2

Apri Blocco note ++
Seleziona Sostituisci (Ctrl / H)
Trova cosa: \ x00
Sostituisci con:
Fai clic sul pulsante di opzione Espressione regolare
Fai clic su Sostituisci tutto


-1

Evidenzia un singolo carattere nullo, vai a trova e sostituisci: di solito inserisce automaticamente il testo evidenziato nella casella di ricerca. Immettere uno spazio o lasciare vuoto la casella di sostituzione.


8
Questo non funziona con il carattere NUL in Notepad ++. Funziona con molti altri caratteri speciali ASCII, come BEL, ma NUL può essere trovato solo utilizzando codici di escape estesi o RegEx.
Ayelis
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.