Trình soạn thảo văn bản có khả năng chạy các biểu thức chính quy phức tạp?


10

Tôi muốn tìm một trình soạn thảo văn bản có khả năng chạy và chủ yếu lưu trữ các biểu thức thông thường để sử dụng lại sau này. Nó cũng có thể chạy chúng trên nhiều tệp.

Tôi biết tôi có thể có được tất cả những thứ đó với grep, nhưng không có nhiều thứ để sử dụng lại trên đó. Tôi đã có thể nhận được một số chức năng biểu thức chính quy trên Gedit bằng các plugin, nhưng gần như không gần với nhu cầu của tôi.

Có EditPad Pro cho Windows (chạy trên rượu) nhưng bản địa luôn tốt hơn :)

Câu trả lời:


18

Hai trình soạn thảo Unix mã nguồn mở cổ điển là GNU emacs(g) Vim và cả hai đều hoạt động tốt trên Ubuntu. Cả hai đều có nhiều tính năng hơn bạn có thể tìm hiểu trong cả cuộc đời, bao gồm cả những gì bạn đang theo đuổi. Có rất nhiều người khác hai cũng vậy, nhưng bạn cũng có thể bắt đầu với sản phẩm tốt nhất. (Tôi sẽ cố gắng không tham gia vào cái nào trong số này là tốt hơn, vì nó đã là một cuộc chiến tranh thần thánh.)

Nhân tiện, sed có lẽ là một sự thay thế tốt hơn grep cho các thao tác RegEx từ dòng lệnh và bạn có thể viết và lưu các tập lệnh cho nó. (Tất nhiên bạn cũng có thể sử dụng perl, awk và python cho reg ex.)

Một số nguồn cảm hứng từ xkcd: http://imss.xkcd.com/comics/real_programmers.png


2
Tôi ghét trở thành anh chàng đó, nhưng 'quá', không phải 'hai'.
TJ L

Ôi! Xin lỗi về lỗi đánh máy. Đừng lo lắng. Tôi thường là anh chàng đó. Tôi đã có ý đề cập rằng nếu bạn muốn gắn bó với gEdit, bạn có thể cài đặt plugin Công cụ bên ngoài đẹp mắt của nó và sử dụng nó để chạy các tập lệnh sed trên bộ đệm.
frabjous

@ tj111 - Không bao giờ xin lỗi vì được định hướng chi tiết. Trong công việc của chúng tôi, sẽ thật đáng lo ngại nếu bạn KHÔNG nghĩ nó quan trọng. :-)
Scott Smith

15

Geany có một bộ tìm kiếm tốt:

geany tìm

thay thế:

thay thế geany

và tìm kiếm tập tin:

geany grep

đặc trưng. Nó không có bất kỳ khả năng sẵn có nào để lưu các biểu thức thông thường cho sau này mặc dù bạn luôn có thể lưu trữ chúng trong một tệp văn bản.

Nó không có lịch sử để tìm / thay thế nhưng điều này chỉ giới hạn trong một phiên.


1
Việc sử dụng Geany dễ dàng hơn nhiều khi bạn cần một trình soạn thảo GUI nhanh với sự hỗ trợ của regex, thay vì phải truy cập internet và các trang man để tìm hiểu cú pháp cho các biểu thức chính quy trong vi (m)
Alex Marshall

6

Nếu bạn chỉ muốn chạy regex với một loạt các tệp, tôi nghĩ rằng đã đến lúc để bạn tìm hiểu về sedawk


Bạn có thể lưu và chỉnh sửa các tập lệnh trong một tệp có sedhoặc awkquá.
pbhj

2

Bạn có thể sử dụng kết hợp GEdit và plugin Advanced find / replace plugin for geditmà bạn có thể tìm thấy trong http://code.google.com.vn/p/advified-find/ .

Từ năm 2012, nó có tính năng đánh dấu một biểu thức để bạn có thể sử dụng lại nó. Ngoài ra, nó có thể tìm kiếm và thay thế cho các tệp đã mở, cho các tệp trong một thư mục (có bộ lọc) hoặc bên trong một lựa chọn văn bản.

Về cách cài đặt, bạn có thể làm theo các hướng dẫn trong trang wiki của mình http://code.google.com.vn/p/advified-find/wiki/Installation .

Về cơ bản những gì bạn phải làm là:

  1. Tải xuống phiên bản chính xác cho gedit của bạn từ http://code.google.com.vn/p/advified-find/doads/list .

  2. Giải nén nó.

  3. Chạy install.sh (không có sudo).

  4. Đi đến tùy chọn / trình cắm và kích hoạt nó.

Chụp màn hình hộp thoại Tìm / Thay thế Nâng cao đã mở


1

Tôi muốn thêm một bình luận chỉ vào câu trả lời này , nhưng vì rõ ràng tôi không đủ danh tiếng cho điều đó, tôi sẽ sao chép nó ở đây như một câu trả lời của riêng tôi: RegExr là công cụ tốt nhất tôi từng sử dụng để thao tác văn bản sử dụng các biểu thức chính quy. Nó thậm chí sẽ giải thích từng phần của regex cho bạn!

Nó là một công cụ trực tuyến, nhưng có một phiên bản máy tính để bàn . Điều này sử dụng Adobe AIR, đã bị ngừng sử dụng cho Linux, vì vậy bạn có thể cần phải cài đặt nó theo các hướng dẫn từng bước tuyệt vời này . Sau đó, tải xuống .airtệp cho trang máy tính để bàn RexExr được liên kết ở trên và bạn sẽ có thể mở tệp bằng trình cài đặt AIR. Sau đó chỉnh sửa đi!


1

Tôi thực sự ngạc nhiên khi không ai nhắc đến 'medit' ... tìm kiếm / thay thế có hộp kiểm đơn giản nói với medit rằng các tiêu chí bạn nhập là biểu thức regex ... có thể đơn giản hoặc phức tạp như bạn muốn ..


Chào mừng bạn đến với AskUbfox. Sẽ hữu ích hơn nếu bạn có thể xây dựng câu trả lời bằng các ví dụ và / hoặc ảnh chụp màn hình.
Sri

0

Nguyên tử có chức năng này. Tải xuống và cài đặt gói "deb".

Nhấn CTRL+ Fvà nhấp vào .*nút để chuyển sang chế độ regex.

Ngoài ra, bạn có thể nhấn CTRL+ ALT+/

Ngoài ra trên github.

Câu hỏi liên quan về cách sử dụng regex trong nguyên tử.

Hoặc bạn có thể sử dụng catsed.

Sử dụng sed -eđể chỉ đơn giản là in các thay đổi. Sử dụng sed -iđể thực sự chỉnh sửa nội dung của tập tin.

Xem ở đây để biết thêm.

Bạn cũng có thể sử dụng egrepđể sử dụng các biểu thức thông thường với grep.

Nếu bạn chỉ cần tìm các hàm thay thế, hãy geditchấp nhận các biểu thức thông thường nếu bạn nhấn CTRL+ F.

Bạn cũng có thể thực hiện các biểu thức thông thường trong vim .


0

Eclipse là tốt nhất mặc dù hơi nặng cho mục đích. Tất cả các phát hiện có sẵn trong một khung riêng biệt. (bộ xương) Bạn có thể nhảy ngay lập tức đến bất kỳ trong số họ.

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.