P粉1166315912023-08-26 13:50:46
問題在於新引入的v
標誌對轉義規則施加了更多限制。由於它允許字元類別的減法和交集,因此字元類別末尾的字面量-
不能保持未轉義。
因此,如果使用u
標誌,就沒有這樣的限制,而使用v
標誌,則有這樣的限制。參見。
console.log(/^[a-zA-Z0-9+_.-]+@[a-zA-Z0-9]+\.[a-zA-Z0-9]+$/u.test("myname@somesite.com")) console.log(/^[a-zA-Z0-9+_.\-]+@[a-zA-Z0-9]+\.[a-zA-Z0-9]+$/v.test("myname@somesite.com"))