cuốn sách gpt4 ai đã làm

java - Biểu thức chính quy chỉ khớp với dấu phẩy chứ không phải dấu ngoặc?

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 11:40:08 hai mươi bốn 4
mua khóa gpt4 Nike

Tôi có một chuỗi tương tự như sau:

12,44,foo,bar,(23,45,200),6

Tôi muốn tạo một biểu thức chính quy khớp với dấu phẩy, nhưng chỉ những dấu phẩy không nằm trong dấu ngoặc đơn (trong ví dụ trên, tất cả trừ hai dấu phẩy sau 23 và 45). Tôi có thể làm điều này bằng cách nào (regex Java, nếu điều đó quan trọng)?

câu trả lời hay nhất

Giả sử không thể có dấu ngoặc đơn lồng nhau (nếu không, bạn không thể sử dụng Java Regex để thực hiện tác vụ này vì so khớp đệ quy không được hỗ trợ):

Mẫu biểu thức chính quy = Pattern.compile(
", # Ghép một dấu phẩy\n" +
"(?! # chỉ khi nó không theo sau bởi...\n" +
" [^(]* # bất kỳ số lượng ký tự nào ngoại trừ dấu ngoặc mở\n" +
" \\) # theo sau là dấu ngoặc đơn đóng\n" +
") # Kết thúc việc xem trước",
Pattern.COMMENTS);

Biểu thức chính quy này sử dụng khẳng định nhìn về phía trước tiêu cựcĐảm bảo rằng dấu ngoặc đơn sau (nếu có) không phải là dấu ngoặc đơn đóng. Chỉ khi đó dấu phẩy mới được phép khớp.

Biểu thức chính quy chỉ khớp với dấu phẩy chứ không phải dấu ngoặc đơn? , chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/42892244/

hai mươi bốn 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress