Câu hỏi Notepad ++ tìm và thay thế chuỗi bằng một dòng mới


Hãy xem xét kịch bản mà bạn có một chuỗi cụ thể mà bạn muốn tìm và thay thế. Bạn muốn thay thế nó bằng một chuỗi mới chứa ký tự dòng mới (hoặc chuỗi ký tự).

abc123 xyz456-blah
fsafd23 xyz456-green
89hjkf23 xyz456-red
afdsa23 xyz456-yellow
abaac123 xyz456-orange

Trong kịch bản trên, tôi muốn tìm " xyz"và thay thế không gian với một vận chuyển trở lại / newline.

Kết quả sẽ như sau:

abc123
xyz456-blah
fsafd23
xyz456-green
89hjkf23
xyz456-red
   ︙

v.v ...

Câu hỏi: Làm thế nào bạn sẽ dễ dàng đạt được điều này bằng cách sử dụng Notepad ++? Có bất kỳ công cụ nào khác mà bạn đề xuất để dễ dàng thực hiện lệnh này không?


194
2017-09-02 17:57


gốc




Các câu trả lời:


Notepad ++ sẽ làm tốt.

Chuỗi tìm kiếm:

 XYZ
 Lưu ý không gian phía trước xyz.

Thay thế chuỗi:

\ r \ nxyz

Bạn cũng cần phải đặt "Chế độ tìm kiếm" đến "Đã mở rộng" (hộp nhóm bên trái thấp hơn trong Thay thế hộp thoại) để Notepad ++ danh hiệu thoát khỏi mã.


Một số nền: "\ r \ n" là mã thoát cho vận chuyển trả về, tiêu chuẩn cho các dòng mới trong Windows. Các hệ thống kiểu Unix chỉ sử dụng \ n (dòng mới). Hầu hết các IDE, bao gồm Notepad ++, sẽ hiểu cả hai kiểu và mô tả chúng theo các dòng mới, nhưng các tiện ích Windows lõi không hiểu \ n là tương đương với \ r \ n, vì vậy nó thường phù hợp nhất nếu tệp được định được sử dụng trong môi trường Windows.


261
2017-09-02 18:02



\ r \ n = Cú pháp dòng mới của Windows. Tuy nhiên, đối với tất cả mọi thứ khác với notepad cũ đơn giản, nó sẽ chỉ chấp nhận \ n cho một dòng mới (cũng là thông thường hơn). - Macha
Cụm từ của bạn "thông thường hơn" là gây hiểu nhầm. "\ r \ n" là chuẩn trên Windows. Nó chỉ là rất nhiều biên tập viên và IDE xảy ra để nhận ra dòng tiêu chuẩn Unix / Linux kết thúc "\ n" và hiển thị tài liệu cho phù hợp. Không có gì về "\ n" làm cho nó thông thường hơn. - Brian Lacy
Thành thật mà nói, phiên bản Win / DOS có ý nghĩa hơn với tôi. "\ r" có nghĩa là "Vận chuyển trở lại" hoặc "Trả lại vận chuyển / con trỏ về đầu dòng '" và "\ n" có nghĩa là "Chuyển tiếp con trỏ / con trỏ tiến lên một dòng". Tất nhiên, Unix đã 20 năm trước, vì vậy tôi đoán theo nghĩa đó là Microsoft đã phá vỡ tiêu chuẩn. - Brian Lacy
điều này sẽ không hoạt động trừ khi bạn đặt chế độ tìm kiếm, như được chỉ định trong câu trả lời khác: superuser.com/questions/34451/… - codeulike
Nếu bạn đang cố gắng thay thế chuỗi chữ "\ r \ n" bằng một dòng mới thực sự, tôi phải thực hiện các thao tác sau: đặt chế độ tìm kiếm thành bình thường, tìm / thay thế \ r \ n bằng ***. Sau đó đặt chế độ tìm kiếm thành Mở rộng, tìm / thay thế *** bằng \ r \ n. - goku_da_master


Trong Notepad ++, nó rất dễ dàng ...

  • Tìm: xyz
  • Thay thế bằng: \ n


  • Chế độ tìm kiếm: Đã mở rộng (\ n, \ t, v.v.)

Bí quyết là đặt chế độ tìm kiếm.


59
2017-09-02 18:01



Câu trả lời này đã làm việc cho tôi, sự chấp nhận đã không. Ver 5.8.6 - bdwakefield
Có cùng ở đây câu trả lời được chấp nhận không chỉ định bằng cách sử dụng chế độ mở rộng .. - Andy
Chế độ tìm kiếm là chìa khóa, cảm ơn bạn đã đăng bài. - Jrod
Tại sao không \r\n (thay vì \n)? - Peter Mortensen


Trong hộp thoại "Thay thế", hãy đảm bảo rằng trong Chế độ tìm kiếm, bạn đã chọn "Mở rộng". Sau đó nhập vào hộp tìm kiếm nhập "xyz" và thay thế bằng "\ n".


5
2017-09-02 18:01



Tại sao không \r\n (thay vì \n)? - Peter Mortensen


Tôi ăn gian một chút khi các ký tự S & Ring mà tôi không thể nhập trực tiếp vào các trường văn bản (ví dụ: các tab và dòng mới). Tìm một nơi nào đó trong tài liệu đã có ký tự đó, sau đó sao chép nó và dán nó vào trường thay thế.

Vì vậy, trong ví dụ của bạn, bắt đầu từ đầu của một dòng, nhấp, kéo đến cuối dòng preceeding, sao chép và dán nó vào hộp thoại Thay thế.


4
2017-09-02 17:59





Đối với Notepad ++, hãy thay đổi chế độ tìm kiếm thành Mở rộng sau đó trong Thay bằng sử dụng thực địa \ n.


2
2017-09-02 18:02



Tại sao không \r\n (thay vì \n)? - Peter Mortensen