Sử dụng Notepad ++, làm cách nào để xóa tất cả các dòng bắt đầu bằng # hoặc;?Xóa tất cả các dòng bắt đầu bằng # hoặc; trong Notepad ++
Trả lời
Find:
^[#;].*
Replace with gì. Các ^
cho biết sự bắt đầu của một dòng, các [#;]
là một lớp nhân vật để phù hợp với #
hoặc ;
và .*
khớp với bất kỳ điều gì khác trong dòng.
Trong các phiên bản của Notepad ++ trước 6.0, bạn sẽ không thể thực sự loại bỏ các dòng do giới hạn trong công cụ regex của nó; các kết quả thay thế trong các dòng trống cho mỗi dòng phù hợp. Nói cách khác, điều này:
# foo ; bar statement;
sẽ biến thành:
statement;
Tuy nhiên, việc thay đổi sẽ làm việc trong Notepad ++ 6.0 nếu bạn thêm \r
, \n
hoặc \r\n
đến cuối của mô hình, tùy thuộc vào mà dòng kết thúc tập tin của bạn đang sử dụng, kết quả là:
statement;
Bạn có thể thay thế các dòng trống bằng cách sử dụng Chế độ tìm kiếm "Mở rộng" và tìm \ r \ n \ r \ n. Nếu bạn để trống "thay thế bằng", bạn sẽ xóa các dòng trống. Hãy cẩn thận, vì điều này sẽ loại bỏ các dòng trống khác không được tạo bởi thay thế đầu tiên của bạn. – PaulF
Kể từ notepad ++ 6, với hỗ trợ đầy đủ PCRE regex, tìm kiếm^(# |;). * \ R \ n và thay thế bằng trống (với tùy chọn regex được kích hoạt) hoạt động hoàn hảo – Tao
@Tao: Cảm ơn lời nhắc - Tôi quên cập nhật tất cả các câu trả lời của Notepad ++ với hỗ trợ 6.0! Tôi sẽ đến sớm ... – BoltClock
có lẽ bạn nên thử
^[#;].*$
^
khớp với chế độ ăn xin, $
kết thúc.
Sẽ không hoạt động, [xem scintilla] (http://www.scintilla.org/SciTERegEx.html). Các ký tự cuối dòng bị tước đi. – stema
Có thể, nhưng không trực tiếp.
Tóm lại, chuyển đến tìm kiếm, sử dụng regex của bạn, chọn "đánh dấu dòng" và nhấp "Tìm tất cả". Nó dẫn đến dấu trang cho tất cả các dòng đó.
Trong trình đơn tìm kiếm, có một điểm "xóa các dòng được đánh dấu".
Tôi tìm thấy câu trả lời ở đây (câu trả lời đúng là người thứ hai, không phải là chấp nhận!): How to delete specific lines on Notepad++?
+1 cho liên kết –
Như những người khác đã lưu ý, trong Notepad ++ 6.0 và sau đó, người ta có thể sử dụng "Thay thế" tính năng để xóa tất cả các dòng bắt đầu bằng ";" hoặc là "#".
Tao cung cấp cụm từ thông dụng làm điểm xuất phát, nhưng nó không tính đến khoảng trắng có thể tồn tại trước dấu ";" hoặc ký tự "#" trên một dòng nhất định. Ví dụ: dòng bắt đầu bằng ";" hoặc "#" nhưng "tabbed-in" sẽ không bị xóa khi sử dụng biểu thức chính quy của Tao, ^(#|;).*\r\n
.
Biểu thức chính quy của Tao không tính đến báo trước được đề cập trong câu trả lời của BoltClock: phương sai trong các ký tự dòng mới trên các hệ thống.
Cải tiến là sử dụng ^(\s)*(#|;).*(\r\n|\r|\n)?
, chiếm khoảng trắng hàng đầu và chênh lệch ký tự dòng mới. Ngoài ra, mã vạch ?
xử lý các trường hợp trong đó dòng cuối cùng của tệp bắt đầu bằng #
hoặc ;
, nhưng không kết thúc bằng một dòng mới.
Đối với những người tò mò, có thể phân biệt loại ký tự dòng mới được sử dụng trong một tài liệu cụ thể (và nhiều hơn một loại có thể được sử dụng): Xem -> Hiển thị biểu tượng -> Hiển thị kết thúc dòng.
Regex bạn đề xuất có vẻ không thành công trong việc định vị dòng cuối cùng của tài liệu (nếu đó là dòng thích hợp). – maja
Đẹp bắt, @maja! Thử thêm một '?' Vào cuối, như sau: '^ (\ s) * (# |;). * (\ R \ n | \ r | \ n)?'. Tôi sẽ cập nhật câu trả lời gốc cho phù hợp. Cảm ơn bạn! –
Trong Notepad ++, bạn có thể sử dụng tab Đánh dấu trong Tìm đối thoại để Đánh dấu tất cả các dòng khớp với truy vấn của bạn có thể là regex hoặc bình thường (ký tự đại diện).
Sau đó, sử dụng Tìm kiếm> Dấu trang> Xóa các dòng được đánh dấu.
Câu trả lời tương tự đã được viết bởi ** stema ** nhưng câu trả lời của bạn ở đây có ít thông tin hơn nhiều. Trong khi thêm câu trả lời mới cho câu hỏi cũ có thể tốt, họ chỉ hữu ích nếu họ cung cấp thông tin mới. Câu trả lời mà chỉ lặp lại câu trả lời khác không có giá trị, họ chỉ là lộn xộn. – AdrianHHH
- 1. Notepad ++ Thay thế tất cả các biểu thức thông thường (Bắt đầu dòng và kết thúc dòng)
- 2. Xóa các dòng trống trong Notepad ++
- 3. Làm thế nào để bạn xóa tất cả các dòng bắt đầu bằng "chuỗi" trong unix sh?
- 4. Notepad notepad có hiển thị tất cả các ký tự bị ẩn không?
- 5. Tôi muốn sử dụng "awk" hoặc sed để in tất cả các dòng bắt đầu bằng "comm =" trong một tệp
- 6. Xóa tất cả các ngắt dòng (BR)
- 7. Emacs, xóa tất cả các dòng không khớp?
- 8. Các tuyến bắt hoặc tất cả các lỗi trong Sammy.js
- 9. Postgres: xóa tất cả các bảng hoặc xếp hàng xóa?
- 10. Chọn tất cả các cột bắt đầu bằng XXX bằng ký tự đại diện?
- 11. Xóa tất cả các khoảng trống và các dòng trống
- 12. 'chọn tất cả' và 'xóa tất cả' bằng selected.js
- 13. Xóa tất cả các dòng trước khi khớp với sed
- 14. nginx server_name wildcard hoặc bắt tất cả
- 15. Cách xóa ký tự 13 (hoặc n) cuối cùng của mỗi dòng bằng Notepad ++
- 16. Notepad ++ gấp tất cả các thẻ theo mặc định?
- 17. không% x [] bắt tất cả đầu ra?
- 18. Cách xóa tất cả các cam kết từ đầu
- 19. Tắt hoặc xóa tất cả các lệnh gọi # WriteLine Console?
- 20. Câu hỏi chọn jQuery. Chọn tất cả các nút KHÔNG BẮT ĐẦU bằng (chuỗi)
- 21. Thả tất cả các bảng có tên bắt đầu bằng một chuỗi nhất định
- 22. Cuộn lùi tất cả các đường di chuyển hoặc thả bảng và sửa đổi di chuyển (bắt đầu từ đầu)
- 23. Regex HOẶC trong notepad ++
- 24. IDE Eclipse: Dòng (hoặc đánh dấu) giữa khối mã bắt đầu và kết thúc như trong Notepad ++
- 25. VIM: Xóa tất cả các ký tự trước khi từ cụ thể cho tất cả các dòng trong một file
- 26. Liệt kê tất cả các tệp không bắt đầu bằng số
- 27. Xóa tất cả các hàng trong bảng
- 28. scp tất cả các tệp bắt đầu bằng 'tệp' từ máy chủ
- 29. Nhận tất cả các tài nguyên có tên bắt đầu bằng 001XXX.jpg
- 30. Mã Python để tìm tất cả các tệp mới được tạo, sửa đổi và xóa trong tất cả các thư mục/thư mục con bắt đầu từ/directory
để chọn tất cả các dòng bắt đầu bằng #: '#. *' – JinSnow