Jak w Intellij IDEA zamienić tekst na nową linię?

119

Powiedzmy, że chcę zastąpić wszystkie przecinki przecinkami i nową linią, używając funkcji zamiany Intellij IDEA. Co mam wpisać w polu wyszukiwania? W vimie użyłbym & \ r

Bjorn
źródło

Odpowiedzi:

171

Musisz zaznaczyć pole Regex i użyć „\ n” jako znaku nowego wiersza:

wprowadź opis obrazu tutaj

Andrey Chaschev
źródło
I jak możesz usunąć pusty wiersz przy użyciu tego samego wyrażenia regularnego. :)
muasif80
96

Użyj przycisku Multiline, nie jest potrzebne wyrażenie Regex.

edycja: przycisk multilinii brakuje od IntelliJ 15, ale można go włączyć, klikając pole tekstowe i naciskając Alt+EnterlubCtrl+Shift+Enter

Meo
źródło
5
Używam 15 i wygląda na to, że funkcja multilinii już nie istnieje. Dlaczego mieliby usunąć tak przydatną funkcję?
Matthew Cornell,
4
To nadal istnieje, wybierz wiele linii, a następnie kliknij CTRL+F, a następnie kliknij CTRL+R, wydaje się, że jest to ukryta funkcja, ale nadal działa w tym przypadku jak poprzednie wersje
wired00
6
Teraz jest to jeszcze łatwiejsze - widoczna strzałka karetki pojawia się w polach znajdź lub zamień - kliknięcie jej spowoduje wstawienie nowej linii.
Louis St-Amour
8

Uderz CTRL+Fi zaznacz pole regexwyboru. Następnie wyszukaj ,i zamień go na ,\n.

kmera
źródło
7

Najłatwiejszym sposobem, w jaki to zrobiłem, jest użycie wyrażenia regularnego zamiany.

wprowadź opis obrazu tutaj

Są szanse, że nie chcesz wymieniać {, ale po prostu trzymaj mnie w ucieczce, jeśli chcesz to zrobić.

pickypg
źródło
Ha-ha, wygląda na to, że wszyscy to wiedzą.
Andrey Chaschev
Tak i wygląda na to, że z Paintem jesteś szybszy :). PS: Jeśli jeszcze tego nie próbowałeś, zdecydowanie polecam Darcula! To jest o wiele łatwiejsze dla moich oczu.
pickypg
1
To PicPick, którego używam. Wypróbowałem motyw Idea Darcula, ale wydaje mi się, że jestem zbyt przyzwyczajony do domyślnych kolorów.
Andrey Chaschev
4

Dla szukających starej multilinii zamień w inteliJ na wersję> 15.x. Wydaje się, że jest nieco ukryty, ale jeśli wybierzesz wiele linii> kliknij CTRL+F, a następnie natychmiast kliknij, CTRL+Raby wyświetlić oryginalne zastąpienie multilinii.

To działa na Macu IntelliJ 2016.1.3z ⌘ + F> ⌘ + R.

wprowadź opis obrazu tutaj

przewodowy00
źródło
3
po prostu naciśnij ALT + Enter, z fokusem w polu tekstowym
Meo
Nawet z tą sztuczką nie można wprowadzić wielu wierszy w polu zamiany.
Daniele Torino
IntelliJ 2016.1.3
Działa
4

Dla IntelliJ Ostatecznego 2017.3 na Mac, command-shift-enterdziała

wiena wu
źródło
1
Ta odpowiedź jest uzasadniona i działa w celu wyszukiwania i zastępowania w IntelliJ IDEA, PHPStorm i WebStorm, gdzie użytkownik chce zastąpić wystąpienie \naktualną nową linią. Nie neguj przydatnych odpowiedzi.
Bartekus
1

W przypadku intellij Ultimate 2017.1:

Nie potrzebowałem wyrażenia regularnego. Ale mógłbym sprawić, że pojawi się zamiana multilinii.

  • Wpisałem \ nw polu, które chciałem zamienić
  • Umieściłem kursor w polu, w którym chciałem wprowadzić tekst zastępczy, i kliknąłem Ctrl-Shift + Enter. Tutaj właśnie wcisnąłem powrót

wprowadź opis obrazu tutaj

Somaiah Kumbera
źródło
0

Czystym podejściem byłoby dodanie (?m)przed wyrażeniem regularnym, które włącza tryb wieloliniowy. Ma to tę zaletę, że można go również używać podczas globalnego wyszukiwania plików (Ctrl-Shift-F).

Przykład: (?m)\{(.|\n)*?\}wyszukuje wieloliniowe bloki w nawiasach klamrowych.

spheenik
źródło
0

Jest to powiązane, ale nie dokładnie to, o co prosiłeś. Ale potrzebowałem tego i wyobrażam sobie, że inni to robią. Więc miałem problem w Node.js, gdzie chciałem podzielić odrzucenie na wywołanie w dzienniku i odrzucić dla przejrzystości

reject(error)

w

appLogger.log(error, 'error') reject(error)

W trybie normalnym znalazłem i wymieniłem

Odnaleźć: reject(error)

Zastąpić: appLogger.log(error, 'error')\n reject(error)

Następnie w trybie regex wykonałem drugie znalezienie i zastąpienie:

Odnaleźć: \\n

Zastąpić \n

Dr Code Monkey
źródło
Jeśli Twoja odpowiedź jest pomocna, ale nie odpowiada na to pytanie, lepiej zadać nowe pytanie i dodać tam swoją odpowiedź. Zawsze witamy nowe przydatne pytania i odpowiedzi, a jeśli możesz, zachęcamy do udzielenia odpowiedzi na własne pytanie :)
Max Vollmer
0

Ctrl+ Shift+ R podczas zaznaczania zastąpionego tekstu :

Działa to w przypadku opcji Replace in Path (WebStorm 2018.2.3):

wprowadź opis obrazu tutaj

zobacz tutaj

Felix
źródło