Hoán đổi chuỗi trong Notepad ++


0

Tôi đang tìm cách sử dụng các biểu thức thông thường để hoán đổi ba phần văn bản được phân tách bằng dấu ngoặc kép / dấu phẩy. Với mục đích của câu hỏi này, tôi sẽ gọi chúng là các chuỗi, mặc dù tôi không chắc liệu điều đó có đúng không. Một ví dụ dưới đây:

"TEXT_MAP_CENTER","中央地点","Center of Map"

Tôi cần hoán đổi văn bản tiếng Nhật trong chuỗi thứ hai với tiếng Anh ở đầu tiên, để nó đọc:

"TEXT_MAP_CENTER","Center of Map","中央地点"

Đây chỉ là một dòng khoảng 4300+ và mỗi chuỗi là duy nhất. Rất may, trong tập tin cụ thể này, mỗi dòng luôn có ba chuỗi. Có một tập tin thứ hai tôi cần để làm điều này trong đó văn bản kết thúc tốt đẹp.

Để thực hiện điều này một cách nhanh chóng, tôi hiểu rằng có nhiều cách để thực hiện điều này bằng cách sử dụng các biểu thức thông thường, nhưng cho rằng đây không phải là lĩnh vực chuyên môn bình thường của tôi, tôi đang gặp khó khăn thực sự với nó. Làm thế nào tôi có thể đi về làm điều này?

Câu trả lời:


0

Thay thế

,(".*?"),(".*?")$

với

,\2,\1

Hai ()bắt giữ hai chuỗi, được tham chiếu bởi \1\2tương ứng. Sau đó, chúng tôi thay thế chuỗi đầu tiên bằng chuỗi thứ hai và ngược lại

Nếu các chuỗi chứa dòng mới thì bạn chỉ cần chọn .khớp dòng mới trong tùy chọn tìm kiếm regex. Một cách khác mà không cho phép tùy chọn đó là

Find what:    ^("[^"]*"),("[^"]*"),("[^"]*")$
Replace with: \1,\3,\2

Cảm ơn bạn rất nhiều vì thông tin này. Điều này hoạt động hoàn hảo - tôi đã phát hiện ra một số bit của tệp chứa các mục được chia thành nhiều dòng (chúng có vẻ như được bọc như thể chúng cần vừa với một hộp văn bản có kích thước cụ thể). Sẽ có một phương pháp tương tự cho việc này, hoặc sẽ tốt hơn nếu chỉnh sửa chúng bằng tay?
Tony Marotta

@TonyMarotta xem bản chỉnh sửa của tôi
phuclv

Nếu câu trả lời của tôi giúp bạn, bạn có thể vui lòng chấp nhận nó bằng cách nhấp vào dấu chọn không?
phuclv
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.