Trường hợp:biểu thức chính quy - trận đấu từ duy nhất một lần trong dòng
- ehello tạm biệt hellot chào tạm biệt
- ehello tạm biệt hello hello tạm biệt
Tôi muốn để phù hợp với dòng 1 (chỉ có 'hello 'một lần!) KHÔNG muốn khớp với dòng 2 (chứa' xin chào 'nhiều lần)
Đã thử sử dụng cái nhìn tiêu cực phía trước và những gì không ... mà không có bất kỳ succ thực nào ESS ..
Tại sao không chỉ tìm thấy nó một lần và kiểm tra xem nó không tồn tại một lần nữa sau đó? Dường như một chút ít lặp đi lặp lại theo cách đó. – Wiseguy
@Wiseguy - Một patten như '^. * Hello (?!. * Hello)' sẽ không hoạt động, bởi vì nó sẽ luôn khớp với 'hello' cuối cùng của dòng. Bạn sẽ cần một cái gì đó như '^ (? :(?! hello).) * Hello (?!. * Hello)', không thanh lịch hơn nhiều. Tôi có thể đã bỏ lỡ một cái gì đó đơn giản mặc dù ... – Kobi
@Wiseguy - no. Động cơ regex cố gắng để phù hợp, không thất bại. Nó có thể phù hợp, vì vậy nó sẽ. – Kobi