Załóżmy, że miałem plik tekstowy z następującymi dziewięcioma liniami:
foo
bar
baz
qux
quux
Jak mogę użyć Sublime Text 2, aby usunąć wszystkie cztery puste / puste linie, pozostawiając tylko pięć wierszy?
sublimetext2
Nacięcie
źródło
źródło
^(\r|\n\r?)
aby pokryć wszystkie możliwe przerwy linii.^[\s]*?[\n\r]+
?
, ponieważ*
również pasuje do zerowych wystąpień i\s*
będzie pasować do dodatkowego „\ r”, na przykład podczas edycji tekstu systemu Windows w środowisku linux, podobnie^\s*$
jak i sztuczka.Wyrażenie regularne w odpowiedzi Hugo jest poprawne, gdy w wierszu nie ma spacji. W przypadku, gdy istnieją spacje regularne, może być
^\s+$
źródło
^[\s]*?[\n\r]+
zamiast tego. Przetestowałem to i działa.Istnieją również niektóre wtyczki ST2 / ST3 do takich zadań. Lubię te dwa:
Pierwszy ma dwie metody usuwania pustych / niepotrzebnych wierszy. Jedna z nich nazywa
Delete Surplus Blank Lines
się fajna. Usuwa tylko te wiersze, po których następuje kolejna pusta liniaźródło
Znajdź / zamień rozwiązanie:
Regex Find:
\s+
Zamień na:
// pojedyncza spacja
źródło
Nawet nie wiem, jak to wszystko działa, ale próbowałem
^\s*$
i nie działałem (pozostawiając kilka pustych linii).To zamiast tego
^\s*
działa dla mnie{sublime text 3}
źródło
Musiałem użyć:
zamień \ n ^ \ s * \ n na \ n
Https://github.com/NicholasBuse/sublime_DeleteBlankLines plugin nie zrobił nic w ogóle.
źródło
Wzniosły tekst 2 i 3
Komentarze @crates działają dla mnie,
Krok 1: Po prostu naciśnij ctrl+H
Krok 2: naciśnij klawisz RegEX
Krok 3: napisz to w Find:
^[\s]*?[\n\r]+
Krok 4: zamień wszystko
źródło
Prostsze niż myślałem. Ctrl+ ANastępnie Ctrl+ HWybierz opcję Wyrażenie regularne
.*
. Wymień\n\n
się\n
. Voila!źródło
Szukasz tego:
nie usunie wiersza, jeśli z przodu znajduje się biała spacja lub tabulatory>
na przykład:
nie zostaną one usunięte: ... spacja ... abc
... zakładka ... abc
to:
... przestrzeń ... ... nic więcej ...
... zakładka ... ... nic więcej ...
źródło
Korzystanie z wielu wyborów: wybierz jedną parę podziałów linii, a następnie kilkakrotnie użyj szybkiego wyszukiwania wszystkich ( Alt+ F3) lub szybkiego dodawania następnego ( Ctrl+ D), aby zaznaczyć je wszystkie; następnie naciśnij, Enteraby zastąpić je pojedynczymi podziałami linii.
źródło
Jest to łatwiejszy sposób na zrobienie tego bez wyrażenia regularnego. musisz tylko zaznaczyć cały tekst. następnie przejdź do: Edytuj -> Permute Lines -> Unique.
To wszystko. i wszystkie puste linie zostaną usunięte.
źródło
Innym sposobem jest użycie wiersza polecenia
cc.dbl
ConyEdit (wtyczki) do usunięcia pustych linii lub pustych linii.źródło
Istnieje również „Połącz linie”. W systemie OSX zaznacz cały tekst i naciśnij kilka razy CMD-J, a zwinie on zaznaczenie według linii, usuwając podziały linii.
Edycja: dzięki temu podejściu będziesz mieć wszystko w jednym wierszu, a nie o to prosiłeś.
źródło
ctrl-q
(makro nagrywania),cmd-j
(łączenie linii)down arrow
,ctrl-q
(makro zakończenia) . Następnieshift-ctrl-q
powtarzaj tak często, jak to konieczne ...Dla tych, którzy są ciekawi wysublimowanego edytora tekstu, nieoficjalna dokumentacja może być interesująca!
źródło
Istnieje wspaniały pakiet (dla Sublime 2 i 3) o nazwie „ Trimmer ”, który usuwa puste linie. Robi także wiele innych przydatnych rzeczy.
Zobacz to: https://packagecontrol.io/packages/Trimmer
źródło
W moim przypadku niektóre puste wiersze zawierały przestrzeń o szerokości zerowej znaku Unicode (U + 200b). Aby pozbyć się pustych linii, w tym tych z tym znakiem Unicode:
źródło
Korzystając z funkcji znajdź / zamień, spróbuj wkleić zaznaczenie zaczynające się na końcu linii powyżej pustej linii i kończy się na początku linii po pustej linii. Działa to dla pojedynczej pustej linii. Możesz powtórzyć proces dla wielu pustych linii. CTRL- H, umieść swój wybór w polu wyszukiwania i umieść pojedynczy nowy wiersz w polu zastąpienia za pomocą kopiuj / wklej lub inną metodą.
źródło
Aby znaleźć dodatkowe spacje i puste linie, naciśnij Ctrl+ Shift+ F Wybierz Wyszukaj wyrażenia regularne
[\n\r]{2,}
a następnie zamień na
\n
aby usunąć wszelkiego rodzaju spacje w wzniosły i Dreamviewr
źródło
Jeśli
^\n
nie działa poprawnie ===> spróbuj.*[^\w]\n
źródło