Thay thế, (dấu phẩy) trong ngoặc trong Notepad ++


0

Tôi muốn thay thế tất cả các phiên bản của , (dấu phẩy) trong một chuỗi như:

word, synonym, synonym (definition 1, definition2)

Tôi không muốn chạm vào bất cứ thứ gì trước đó ( và tôi không muốn thay đổi bất kỳ văn bản nào trong ngoặc - tất cả những gì tôi cần là thay thế tất cả các dấu phẩy bằng dấu chấm phẩy bên trong dấu ngoặc để tôi nhận được một cái gì đó như:

word, synonym, synonym (definition 1; definition2)

Tôi đã thử với \(.*[\, ].*\) để nắm bắt tất cả những gì có trong ngoặc, nhưng tôi không biết cách đặt Notepad ++ để chỉ thay thế dấu phẩy và không có gì khác.

Câu trả lời:


3

Vì vậy, bạn muốn thay thế, trong dấu ngoặc thành dấu chấm phẩy?

Thử đi:

Find: \((.*)(,)(.*)\)
Explanation: \(     - Literally capture a left bracket
             (.*)   - Captures everything and groups it until...
             (,)    - Captures the comma and groups it
             (.*)   - Captures everything and groups it until...
             \)     - ... the literal right bracket.

Replace With: \($1;$3\)
Explanation:  We replace everything caught above, meaning we need to put in...
              \(    - The literal left bracket again
              $1    - The first group we captured before (everything before ,)
              ;     - Our replacement for the comma, a semi colon
              $3    - The third group we captured before (we skipped 2, the comma, and got everything after)
              \)    - Finally, our literal right bracket again

Tôi có thể đã làm cho nó chính xác hơn một chút và thay vào đó được thực hiện:

Find: \((.*)(?:,)(.*)\)
Explanation: (?:) means the group doesn't capture, so we now replace with:
Replace With: \($1;$2\)

Trong chế độ REGEX, tất nhiên.

Hi vọng điêu nay co ich.


Thật tuyệt, nó đã hoạt động :)
Michal

Bạn có thể giải thích cú pháp cho tôi (nếu bạn thấy có thời gian rảnh)? Tôi là regex Wannabe nhưng vẫn còn một chặng đường dài :(
Michal

Chỉnh sửa nhận xét của tôi với lời giải thích - nếu bạn có thể đánh dấu là câu trả lời và upvote nếu nó hoạt động và giúp bạn :)
Jonno

Xong, bạn đã cứu mạng tôi. Cảm ơn! :)
Michal
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.