Tôi có chuỗi nhưChia tại đơn tách xảy ra
A_B_C_D
A_B___C_D
nơi ___
có thể là bất cứ nơi nào trong chuỗi.
Cách dễ nhất để tách chúng ở bất kỳ _
nào đơn lẻ nhưng không phải là ___
?
Tôi có chuỗi nhưChia tại đơn tách xảy ra
A_B_C_D
A_B___C_D
nơi ___
có thể là bất cứ nơi nào trong chuỗi.
Cách dễ nhất để tách chúng ở bất kỳ _
nào đơn lẻ nhưng không phải là ___
?
>>> "A_B_C_D".match(/(?:[^_]|_{2,})+/g)
["A", "B", "C", "D"]
>>> "A_B___C_D".match(/(?:[^_]|_{2,})+/g)
["A", "B___C", "D"]
Thay vì tìm dấu phân cách, chúng tôi tự tìm thấy các thành phần. Lưu ý rằng các chuỗi phải không phải là _
(bởi vì dấu phân tách là _
) hoặc nhiều hơn một _
s. Vì vậy, các regex để phù hợp với họ chỉ đơn giản là như thế này.
Lưu ý rằng regex này bỏ qua các chuỗi rỗng nếu đầu vào bắt đầu hoặc kết thúc với _
(ví dụ "_a_"
sẽ chỉ trả lại ["a"]
.)
vì vậy những gì không kết quả giống như khi nó chứa '___ '? – Joseph
Khi các phím được tạo, điều này là không thể. –