Odstranit duplicitní řádky
Vložte seznam a každý řádek, který se opakuje po svém prvním výskytu, bude odstraněn. Zbývající řádky si zachovají původní pořadí. Při porovnávání lze ignorovat velikost písmen i nadbytečné mezery a vše probíhá přímo ve vašem prohlížeči.
0 znaků · 0 slov · 0 řádků
0 znaků · 0 slov · 0 řádků
Vše běží přímo v této záložce prohlížeče. Váš text se nikam nenahrává ani neukládá.
Co dělá
Odstranění duplicitních řádků ponechá první výskyt každého řádku a další opakování vyřadí, přičemž původní pořadí zůstane. Porovnávání může ignorovat velikost písmen i okolní mezery a prázdné řádky lze ponechat nebo odstranit.
červená modrá Červená zelená
červená modrá zelená
Kdo odstraňuje duplicity ze seznamů a proč
Duplicitní řádky vznikají všude, kde se slučují seznamy. Marketér spojí dva exportované seznamy e-mailů, výzkumník nasbírá klíčová slova z několika nástrojů, vývojář shromáždí adresy URL z logů, učitel vloží jména ze tří přihlašovacích formulářů: každý skončí se záznamy, které se objevují dvakrát i vícekrát. Duplicity umí odstranit i tabulkový procesor, ale znamená to otevřít soubor, vybrat sloupec a najít správnou nabídku. Vložit text do pole je rychlejší, pokud už data máte ve schránce.
Zachování původního pořadí je důležitější, než by se zdálo. Seznam kroků, žebříček nebo adresy URL v pořadí, v jakém byly procházeny, po seřazení ztratí smysl. Tady první výskyt zůstane přesně tam, kde byl, a pozdější opakování se prostě vynechají. Počítadlo ukazuje, kolik řádků bylo odstraněno, takže poznáte, zda je výsledek věrohodný.
Jak porovnávání funguje a na co neviditelné rozdíly
Každý řádek se zredukuje na porovnávací klíč a při čtení seznamu shora dolů se ukládá do množiny. Řádek, jehož klíč už v množině je, je duplicita. Stačí jeden průchod, takže i seznamy se stovkami tisíc řádků se zpracují rychle. Liší se to také od klasického unixového příkazu uniq, který odstraňuje jen duplicity na sousedních řádcích, a proto se obvykle spouští po sort, čímž se ztratí původní pořadí. Idiom awk '!seen[$0]++' dělá totéž, co tento nástroj.
Dva řádky mohou vypadat stejně a přesto se lišit. Mezera na konci, tabulátor místo mezery nebo nezlomitelná mezera zkopírovaná z webové stránky způsobí, že je počítač považuje za různé řetězce. Zapněte ořezávání, aby se ignorovaly mezery na obou koncích každého řádku, včetně nezlomitelných mezer. Vypněte rozlišování velkých a malých písmen, aby se „Paris“ a „paris“ braly jako stejný záznam; zachová se první nalezený zápis. Prázdné řádky můžete ponechat, aby zůstaly oddělené odstavce, nebo je úplně odstranit.
Co dělat po vyčištění
Seznam bez duplicit často potřebuje další krok, řazení: Seřadit řádky ho umí seřadit abecedně, přirozeně nebo podle délky. Pokud seznam pochází z PDF nebo e-mailu s rozbitými řádky, nejprve je opravte pomocí dalších textových nástrojů, protože záznam rozdělený na dva řádky se nemůže shodovat se svým nerozděleným dvojčetem.
Často kladené otázky
- Který výskyt duplicitního řádku zůstane zachován?
- První z nich. Každý další řádek se stejným obsahem se odstraní a zbylé řádky zůstanou v původním pořadí, takže se nic nepřeházuje.
- Proč se neodstraní dva řádky, které vypadají stejně?
- Liší se neviditelným způsobem, nejčastěji mezerou na konci, tabulátorem nebo nezlomitelnou mezerou. Zapněte ořezávání mezer, nebo ignorujte velikost písmen, pokud se liší jen ta.
- Čím se to liší od příkazu uniq?
- uniq vynechá řádek, jen když se opakuje řádek těsně nad ním, proto se obvykle kombinuje s sort. Tento nástroj najde opakování kdekoli v textu a zachová původní pořadí.
- Mohu duplicity odstranit a seznam zároveň seřadit?
- Nejprve tady odstraňte duplicity a výsledek vložte do nástroje Seřadit řádky. Ve dvou krocích si můžete ponechat pořadí prvního výskytu, když ho potřebujete, a řadit jen tehdy, když chcete.