È possibile utilizzare un'espressione regolare per rimuovere le parole duplicate consecutive in una riga, tuttavia non credo sia possibile rimuovere le parole duplicate che non sono consecutive (ad es dangerous, hazardous, dangerous
.).
Usa questo regex nella finestra di sostituzione in Notepad ++ e non dimenticare di selezionare "Espressione regolare" come opzione di ricerca in basso:
Questa espressione regolare rimuoverà tutte le parole duplicate consecutive - che si tratti di 2 parole duplicati o 10 parole duplicati consecutivamente: \b(\w+)(?:,\s+\1\b)+
.
Lo stesso regex senza virgole sarebbe: \b(\w+)(?:\s+\1\b)+
(potrebbe essere utile per altri utenti).
Se si desidera un regex appositamente per solo due parole duplicati (doppie), utilizzare questa espressione regolare: (\b\w+\b)\W+\1
.
Inserire questo regex nella Sostituire con scatola per mantenere un'occorrenza della parola (parole altrimenti tutto ripetute saranno rimossi): ${1}
.
Queste espressioni regolari risolveranno una situazione come quella che hai descritto nella tua domanda come esempio. Il primo regex funzionerà per ogni numero di parole duplicate (ad es. dangerous, dangerous, dangerous, dangerous, hazardous
), Mentre la seconda versione funzionerà solo per due parole duplicate (ad es dangerous, dangerous, hazardous
.).
Nota: L'espressione regolare sarà valido solo per il formato descritto nella domanda, il che significa che formati come two words, two words, anotherword
, two-words, two-words, anotherword
, three words expression, three words expression, anotherword
non sarà cambiato, perché l'espressione regolare non si applica a loro.
dangerous,hazardous,dangerous,perilous
? In altre parole, le parole duplicate sono sempre una accanto all'altra?