2012-05-31 15 views
39

tôi đã đi lên với regex này mà tìm thấy tất cả các từ bắt đầu bằng $ và chứa _ nhấn mạnh:Regex để thay thế các giá trị bao gồm một phần của trận đấu thay thế trong tuyệt vời?

\$(\w+)_(\w+)

tôi về cơ bản tìm kiếm cho các biến, giống như $var_foo, vv

thế nào Tôi thay thế các công cụ bằng cách sử dụng các nhóm regex?

Ví dụ: làm cách nào để xóa dấu gạch dưới và làm cho chữ cái viết hoa tiếp theo, như $varFoo?

Trả lời

44

Biểu thức thay thế là:

\$\1\u\2 

Xem Regular Expressions chapter(trong TextMate docs) để biết thêm thông tin.

Có đã là một gói phần mềm đó thực hiện điều này, và nhiều hơn nữa:

+1

Sublime text 3 không mất regex trong "Replace With" lĩnh vực. Nếu tôi đặt một regex ở đó, nó chỉ đổ regex đó làm chuỗi trong trình soạn thảo. Làm thế nào tôi có thể sử dụng regex trong trường "Thay thế" trong tuyệt vời? Về cơ bản, tôi muốn tìm kiếm tất cả các từ (về cơ bản giá trị màu hex) bắt đầu bằng "#" và thêm một số chuỗi trước và sau từ đó. Sử dụng "\ # \ w +", tôi có thể tìm thấy tất cả các từ như vậy, nhưng nếu tôi thực hiện string1 \ # \ w + string2, nó sẽ xuất ra như nó, mà không thay thế regex bằng từ thực tế. – maverick

+1

@ dk49: Sử dụng như sau: Tìm: (# \ w +) Thay thế: text-before \ 1text-after – Mahesh