Ok, hiện tại tôi cảm thấy khá dày. Về cơ bản, tôi muốn xác định biểu thức chính quy JavaScript sẽ khớp với bất kỳ thứ gì ngoại trừ chính xác một chuỗi cụ thể. Vì vậy, nói tôi có chuỗiXác định biểu thức chính quy JavaScript khớp với bất kỳ thứ gì ngoại trừ một chuỗi cụ thể
"dog"
hoặc
"cat"
Tôi muốn có một biểu thức chính quy độc lập đơn như vậy mà nó sẽ phù hợp với chuỗi
"dogsled"
hoặc chuỗi
"cattle"
Chỉ cần không phải "chó" hoặc "mèo" trên đó s riêng. Tôi đã cố gắng này, mà về cơ bản nói, bỏ qua bất cứ điều gì bắt đầu với "mèo" hay "con chó", mà không phải là chính xác những gì tôi cần ...
var pattern= /^(?!dog|cat).+/
pattern.test("cat") // false, as expected
pattern.test("dog") // false, as expected
pattern.test("bananananana") // true
pattern.test("dogsled") // false, but the regexp I want would return true
này phải được đơn giản .... cảm ơn!
Sửa Chỉ cần làm rõ, tôi không muốn làm bất cứ phủ nhận giá trị trả về để có được kết quả tôi muốn- regex nên return false cho "chó" và đúng với "dogsled" hay sai cho " mèo" và đúng đối với 'bò'
+1 để thực sự cung cấp cho regex. Rất nhiều câu hỏi [tag: regex] chỉ là kiểu "Tôi có thể có mã". – Matt
Tại sao không đơn giản là phủ nhận? '! string.match (/^dog | cat $ /)' –
@LinusKleen ha ha ha tên người dùng tuyệt vời cho một câu hỏi regex :-) – Pointy