Utilizzo di Notepad ++, come rimuovere tutte le righe che iniziano con # o;?Elimina tutte le righe che iniziano con # o; in Blocco note ++
risposta
Ricerca:
^[#;].*
Sostituire con niente. ^
indica l'inizio di una riga, la classe di [#;]
corrisponde a #
o ;
e .*
corrisponde a qualsiasi altro elemento della linea.
Nelle versioni di Notepad ++ precedenti alla 6.0, non sarà possibile rimuovere effettivamente le righe a causa di una limitazione nel suo motore regex; la sostituzione produce righe vuote per ogni riga abbinata. In altre parole, questa:
# foo ; bar statement;
si trasformerà in:
statement;
Tuttavia, la sostituzione lavorerà in Notepad ++ 6.0 se si aggiunge \r
, \n
o \r\n
alla fine del pattern, a seconda che fine riga il file sta usando, con conseguente:
statement;
È possibile sostituire le righe vuote utilizzando la modalità di ricerca "Esteso" e trovare \ r \ n \ r \ n. Se lasci vuoto "sostituisci con", rimuoverai le righe vuote. Fai attenzione, poiché rimuoverà altre righe vuote che non sono state create dalla tua prima sostituzione. – PaulF
A partire dal blocco note ++ 6, con il supporto di regex completo PCRE, la ricerca di^(# |;). * \ R \ n e la sostituzione con vuoto (con l'opzione regex abilitata ovviamente) funziona perfettamente – Tao
@Tao: Grazie per il promemoria - Ho dimenticato di aggiornare tutte le mie risposte Notepad ++ con il supporto 6.0! Ci arriverò presto ... – BoltClock
Forse si dovrebbe provare
^[#;].*$
^
corrisponde all'inizio, $
alla fine.
Non funzionerà, [vedi scintilla] (http://www.scintilla.org/SciTERegEx.html). I caratteri di fine riga vengono eliminati. – stema
È possibile, ma non direttamente.
In breve, andare alla ricerca, utilizzare la regex, controllare "linea di riferimento" e fare clic su "Trova tutti". Risulta in segnalibri per tutte quelle linee.
Nel menu di ricerca c'è un punto "cancella linee segnalibro" voilà.
ho trovato la risposta qui (la risposta corretta è la seconda, non il accettato!): How to delete specific lines on Notepad++?
+1 per il collegamento –
Come altri hanno notato, in Notepad ++ 6.0 e versioni successive, è possibile utilizzare la funzione "Sostituisci" funzione per eliminare tutte le righe che iniziano con ";" o "#".
Tao fornisce un'espressione regolare che funge da punto di partenza, ma non tiene conto dello spazio bianco che può esistere prima del ";" o "#" carattere su una determinata linea. Ad esempio, le righe che iniziano con ";" o "#" ma sono "tabbed-in" non saranno cancellati quando si utilizza l'espressione regolare di Tao, ^(#|;).*\r\n
.
L'espressione regolare di Tao non tiene conto dell'errore menzionato nella risposta di BoltClock: varianze nei caratteri di nuova riga tra i sistemi.
Un miglioramento è quello di utilizzare ^(\s)*(#|;).*(\r\n|\r|\n)?
, che rappresenta lo spazio bianco iniziale e le variazioni di carattere di nuova riga. Inoltre, il trailing ?
gestisce i casi in cui l'ultima riga del file inizia con #
o ;
, ma non termina con una nuova riga.
Per i curiosi, è possibile distinguere quale tipo di carattere di fine riga viene utilizzato in un determinato documento (e più di un tipo può essere utilizzato): Visualizza -> Mostra simbolo -> Mostra fine riga.
L'espressione regolare suggerita sembra non riuscire a individuare l'ultima riga del documento (se è una riga pertinente). – maja
Bella cattura, @maja! Prova ad aggiungere un '?' Alla fine, in questo modo: '^ (\ s) * (# |;). * (\ R \ n | \ r | \ n)?'. Aggiornerò di conseguenza la risposta originale. Grazie! –
In Notepad ++, è possibile utilizzare la scheda Segna nella finestra di dialogo Trova per contrassegnare tutte le righe corrispondenti alla query che possono essere espressioni regolari o normali (carattere jolly).
Quindi utilizzare Cerca> Segnalibro> Rimuovi righe segnalibro.
La stessa risposta è già stata scritta da ** stema ** ma la tua risposta qui ha molto meno informazioni. Anche se aggiungere nuove risposte a vecchie domande può essere utile, sono utili solo se forniscono nuove informazioni. Le risposte che ripetono solo altre risposte non hanno valore, sono solo confusione. – AdrianHHH
- 1. Elimina in modo ricorsivo tutte le cartelle che iniziano con
- 2. Come eliminare le righe che non iniziano con 'x' in Panda o mantenere le righe che iniziano con 'x'
- 3. Più righe con righe che iniziano con lo spazio
- 4. Elimina tutte le righe duplicate Excel vba
- 5. Elimina tutte le righe nella tabella
- 6. Deadlock su MySQL che elimina le righe
- 7. Come selezionare le righe che iniziano con digit in PostgreSQL?
- 8. Regex: rimuovere le righe che non iniziano con una cifra
- 9. Come si eliminano tutte le righe che iniziano con "stringa" in unix sh?
- 10. Come posso eliminare tutte le righe che non iniziano con determinati caratteri?
- 11. Voglio usare "awk" o sed per stampare tutte le righe che iniziano con "comm =" in un file
- 12. Disabilitare le virgolette intelligenti in Blocco note ++
- 13. Esegui comandi con blocco note ++
- 14. Elimina tutte le righe di tutte le tabelle che non sono più utilizzate in nessuna relazione FK
- 15. come salvare le impostazioni nel blocco note ++
- 16. Trova duplicati ed elimina tutto nel blocco note ++
- 17. Elimina tutte le righe da una tabella, genera nullpointer
- 18. Espressione regolare che contiene tutte le lettere specifiche nel blocco note ++
- 19. In che modo EXISTS restituisce elementi diversi da tutte le righe o senza righe?
- 20. righe egrep che iniziano con re terminano con g
- 21. Blocco note Jupyter (IPython)
- 22. DirectoryInfo.getFiles che iniziano con
- 23. Convalida tutte le celle in tutte le righe di SlickGrid
- 24. Aggiorna documento nel blocco note ++
- 25. Elimina le prime quattro righe in Excel con PowerShell
- 26. Leggi tutte le righe con BufferedReader
- 27. Codice per rilevare tutte le parole che iniziano con una maiuscola in una stringa
- 28. DROP tutte le tabelle che iniziano con "EXT_" in Oracle SQL
- 29. Elimina righe MySql o contrassegna "morto"?
- 30. Come evidenziare le parole che iniziano con @ nella sintassi Vim?
per selezionare tutte le righe che iniziano con #: '#. *' – JinSnow