Jak mogę zamienić puste linie w Notepad ++? Próbowałem znaleźć i zastąpić pustymi liniami w znalezieniu i nic w zamianie, ale to nie zadziałało; prawdopodobnie potrzebuje wyrażenia regularnego.
Jak mogę zamienić puste linie w Notepad ++? Próbowałem znaleźć i zastąpić pustymi liniami w znalezieniu i nic w zamianie, ale to nie zadziałało; prawdopodobnie potrzebuje wyrażenia regularnego.
Odpowiedzi:
Potrzebujesz czegoś w rodzaju wyrażenia regularnego.
Musisz być w Extendedtrybie
Jeśli chcesz, aby wszystkie linie kończyły się na jednej linii, użyj \r\n. Jeśli chcesz po prostu usunąć puste linie, użyj \n\rjak pierwotnie sugerowano @Link.
Zastąp oba wyrażenia niczym.
\r\n\r\ni zastąpić je \r\n.
\r\n\W*\r\ni zamień na\r\n
(\r\n|\r|\n)(\s*(\r\n|\r|\n))+i zastąpić \r\ngo zobaczyć w akcji tutaj: regex101.com/r/qD9dB1/1
Istnieje teraz wbudowany sposób, aby to zrobić od wersji 6.5.2
Edit -> Line Operations -> Remove Empty Lines lub Remove Empty Lines (Containing Blank characters)
Istnieje wtyczka, która dodaje menu zatytułowane TextFX. To menu, w którym znajduje się oszałamiająca gama opcji szybkiej edycji tekstu, daje osobie możliwość szybkiego wprowadzania zmian w kodzie. W tym menu możesz znaleźć takie opcje, jak Usuń cytaty, Usuń puste linie, a także Rozpakuj i zawiń tekst
Wykonaj następujące czynności:
TextFX > TextFX Edit > Delete Blank Lines
TextFX > TextFX Edit > Delete Surplus Blank Lines
TextFX > TextFX Tools, jest sortowanie linii, opcjonalnie usuwanie duplikatów. Bardzo przydatny sposób wykonywania Uniksa sort -una Windowsie bez cygwina, unxutils lub podobnego.
Settings > Import > plugin...i znajdź plik dll, aby go zainstalować. Staje się pozycją menu przezPlugins
^[ \t]*$\r?\nznajdź co, pozostaw zamień puste. Spowoduje to dopasowanie wszystkich wierszy zaczynających się od białej spacji i kończących się znakiem powrotu karetki (w tym przypadku Windows CRLF)^\R(dokładnie puste linie) lub ^\h*\R(tylko puste linie ze spacjami).To działało dla mnie:
ctrl + h(skrót do zamiany)find whatpolu.
[\n\r]+$lub^[\n\r]+Replace withpole pusteSearch ModewybierzRegexReplace AllW notatniku ++ naciśnij CTRL + H, w trybie wyszukiwania kliknij przycisk opcji „Rozszerzony (\ n, \ r, \ t ...)”, a następnie wpisz pole „Znajdź co”: \ r \ n (skrót od CR LF ) i pozostaw pole „Zamień na” puste.
Na koniec naciśnij przycisk Zamień wszystko
\n.
Ctrl + H.
znajdź - \ r \ r zamień na - \ r.
To oczywiście nie działa, jeśli puste linie zawierają tabulatory lub spacje. Wiele stron internetowych (np. Http://www.guardian.co.uk/ ) zawiera te białe linie w wyniku wadliwego edytora HTML.
Usuń białe znaki, używając wyrażenia regularnego w następujący sposób:
zmień wzór: [\ t] + $ w nic.
gdzie [\ t] pasuje do tabulacji lub spacji. „+” odpowiada jednemu lub więcej wystąpieniom, a „$” oznacza koniec linii.
Następnie użyj notatnika ++ / textFX, aby usunąć pojedyncze lub dodatkowe puste linie. Upewnij się, że te puste linie nie są znaczące w danym kontekście.
1) Ctrl + H(Lub Search 🠆 Replace..), aby otworzyć okno Zamień.
2) Wybierz 'Search Mode' „Wyrażenie regularne”
3) W "Znajdź Co typ ^(\s*)(.*)(\s*)$& w „Zamień na” typ\2
^ - Dopasowuje początek znaku linii(\s*) - Dopasowuje puste znaki spacji(.*) - Pasuje do dowolnych znaków(\s*) - Dopasowuje puste znaki$ - Dopasowuje znak końca linii\2 - Oznacza pasującą pozycję drugiego nawiasu
Więcej informacji na temat regex można znaleźć na stronie https://www.rexegg.com/regex-quickstart.html .
^\r\nz niczym (wybierz wyrażenie regularne)Uwaga: krok 1 usunie twoją intencję kodu wykonaną za pomocą tabulatorów i spacji
CTRL + A, wybierz menu TextFX -> Edycja TextFX -> Usuń puste linie, jak to sugeruje powyżej.
Ale jeśli linie zawierają trochę spacji, przesuń kursor do tej linii i wykonaj CTRL + H. Sek. „Znajdź co:” pokaże puste miejsce, aw sekcji „Zamień na” pozostaw puste. Teraz wszystkie spacje zostały usunięte i teraz spróbuj CTRL + A, wybierz menu TextFX -> Edycja TextFX -> Usuń puste linie
Nie widziałem połączonej jako odpowiedzi, więc wyszukaj ^ \ s + $ i zastąp {{}}
^\s+$ means
^ start of line
\s+ Matches minimum one whitespace character (spaces, tabs, line breaks)
$ until end of line
^\s+^(\S)i zastąpić je \1.
ta praca dla mnie:
SEARCH:^\r
REPLACE: (empty)
\ni Windows EOL\r\n