Tìm và thay thế bằng một dòng mới trong Visual Studio Code


397

Tôi đang dùng thử trình soạn thảo Microsoft Visual Studio Code mới trong môi trường Linux Fedora. Tôi muốn biết cách thay thế dòng mới (\ n) thay cho một số văn bản khác.

Ví dụ: tôi có văn bản html như thế này

<tag><tag> 

mà tôi muốn thay thế như

<tag>
<tag>

Trong cao siêu, tôi sẽ sử dụng mẫu regex và tìm "> <" và thay thế bằng "> \ n <" Làm cách nào để thực hiện điều này trong Visual Studio Code?



@RobertMacLean câu hỏi này đã được hỏi trước câu hỏi được gắn thẻ ở trên
Sriram

1
@RobertMacLean tạo chu kỳ trùng lặp
Kishan Kumar

Bạn có thấy điều này không? stackoverflow.com/a/50042582/6597375
Deepu Reghunath

Trên thực tế không phải là một bản sao: Câu hỏi khác hỏi về việc trả lại xe ngựa, câu hỏi này về dòng mới và không có câu trả lời nào không hoạt động cho việc trả lại xe vì một số lý do.
Jason Young

Câu trả lời:


581

Trong hộp tìm kiếm cục bộ ( ctrl+ f), bạn có thể chèn dòng mới bằng cách nhấn ctrl+ enter.

Hình ảnh tìm kiếm đa dòng trong tìm kiếm địa phương

Nếu bạn sử dụng tìm kiếm toàn cầu ( ctrl+ shift+ f), bạn có thể chèn dòng mới bằng cách nhấn shift+ enter.

Hình ảnh tìm kiếm đa dòng trong tìm kiếm toàn cầu

Nếu bạn muốn tìm kiếm multilines theo nghĩa đen của ký tự, hãy nhớ kiểm tra biểu tượng regex ngoài cùng bên phải .

Hình ảnh của chế độ regex trong tìm kiếm thay thế


Trong các phiên bản trước của mã Visual Studio, điều này là khó khăn hoặc không thể. Các phiên bản cũ hơn yêu cầu bạn sử dụng chế độ regex, các phiên bản cũ hơn chưa hỗ trợ tìm kiếm dòng mới nào.


6
Cũng không có trong phiên bản 0.10.3. Nhưng có một tiện ích mở rộng có thể làm điều này: marketplace.visualstudio.com/items/jmallien.ReplaceWithNewline
rmac

14
Lưu ý rằng trong khi thay thế bằng các ký tự dòng mới được hỗ trợ, việc tìm các ký tự dòng mới vẫn không hoạt động cho đến khi github.com/Microsoft/vscode/issues/313 được sửa.
C Snover

2
Điều này không hoạt động trên mac - nó thực sự thay thế \ r hoặc \ n
Naveen Vijay

38
Lưu ý rằng chế độ regex phải được bật. Nếu không, nó sẽ không sử dụng một dòng mới.
Neves

12
regex tìm kiếm \\nvà thay thế bằng \ncác tác phẩm cho tôi, sử dụng 1.25.0
Gregor

130

Với VS Code phát hành 1.38, bạn có thể nhấn CTRL+ Entertrong hộp tìm trình soạn thảo để thêm ký tự dòng mới.

nhập mô tả hình ảnh ở đây

Với phiên bản VS Code phát hành 1.30, bạn có thể nhập Shift+ Entervào hộp tìm kiếm để thêm ký tự dòng mới mà không cần sử dụng chế độ regex.

nhập mô tả hình ảnh ở đây

Kể từ khi VS Code phát hành 1.3 , tìm kiếm regex đã hỗ trợ các ký tự dòng mới. Để sử dụng tính năng này, đặt cửa sổ tìm thành chế độ regex và sử dụng \nlàm ký tự dòng mới.

Tìm kiếm đa dòng trong gif VS Code


Điều này đã cho tôi một chút đẩy vào đúng hướng. Tôi cần dòng trống để thay thế các nhận xét HTML: <!--[\s\S\n]*?-->Và tôi đã thiếu \ n :)
Guntram

Tôi yêu tính năng này, cũng hoạt động trong các lĩnh vực tìm kiếm và thay thế!
SimplyInk

5
Vẫn không hoạt động trong thanh bên tìm kiếm ctrl + shift + f ... -_-
Xunnamius

61

Trong phiên bản 1.1.1:

  • Ctrl+H
  • Kiểm tra biểu tượng exp thông thường .*
  • Tìm kiếm: ><
  • Thay thế: >\n<

15
Cảm ơn bạn đã đề cập rằng bạn phải nhấn biểu tượng regrec!
Paul Chernoch

24

Cũng lưu ý, sau khi nhấn biểu tượng regex, để thực sự thay thế \nvăn bản bằng một dòng mới, tôi đã phải sử dụng \\nnhư tìm kiếm và \nthay thế.


1
Xin chào @Stiv mẹo tuyệt vời nhưng đây thực sự nên là một nhận xét vì nó không trả lời câu hỏi.
Chic

Có thể không nhìn vào các bình luận ... đây là câu trả lời tôi cần. Cảm ơn @stiv!
Jack Ryan

16

Một cách giải quyết khác có thể là sử dụng đa con trỏ. chọn> <một phần ví dụ của bạn sử dụng Ctrl+ Shift+ Lhoặc chọn tất cả các lần xuất hiện. Sau đó, sử dụng các phím mũi tên để di chuyển tất cả các con trỏ giữa các thẻ và nhấn enter để chèn một dòng mới ở mọi nơi.

Điều này sẽ không hoạt động trong mọi tình huống.

Bạn cũng có thể sử dụng Ctrl+ Dđể chọn trận đấu tiếp theo, điều này sẽ thêm trận đấu tiếp theo vào vùng chọn và thêm con trỏ. Và sử dụng Ctrl+ K Ctrl+ Dđể bỏ qua một lựa chọn.


Ctrl+Dtuyệt! Bạn có thể cần nhấn Ctrl+Ftrước và sau vài Ctrl+Dgiây hoặc bỏ qua Ctrl+K Ctrl+D, bạn có thể nhấn Escđể đặt con trỏ trong tất cả các lựa chọn!
CPHPython

4

Trên phiên bản mac của Mã VS, tôi chọn phần, sau đó phím tắt là Ctrl+ jđể xóa ngắt dòng.


1

với v1.31.1 ở chế độ RegEx, chức năng Thay thế tất cả bị hỏng. nhấn vào nút đó chỉ thay thế một trường hợp


1

CTRL + H , sau đó chọn regex (*) và viết \ n

Phiên bản ngắn hơn: CTRL+ H ALT+ R\ n

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.