正则expression式不匹配以字符e开始的行

我有这样一个正则expression式:

/^[^(\-.+\n|content|\n\-.+\-{2})](.+)/igm 

这是一个示例input:

 ------WebKitFormBoundaryKanSEkvcMamqayJY Content-Disposition: form-data; name="fl"; filename="emty" Content-Type: application/octet-stream this is trial ------WebKitFormBoundaryKanSEkvcMamqayJY-- 

我想要捕获除了下面的每一行:

 ------WebKitFormBoundaryKanSEkvcMamqayJY Content-Disposition: form-data; name="fl"; filename="emty" Content-Type: application/octet-stream ------WebKitFormBoundaryKanSEkvcMamqayJY-- 

这个正则expression式运作良好,除非行以下列字符开始:

 e,t,o,+,|,c,n,. 

我想这是关于字符ASCII代码范围的东西,不知道如何解决这个问题。

恐怕你的正则expression式有一个更大的问题。 总之, [^(\-.+\n|content|\n\-.+\-{2})]只匹配1个字符,因为它是一个字符类。

假设你想忽略的行以超过Content-Content- ,你可以使用下面的正则expression式:

 /^(?!-{3,}|content-).+$/igm 

这里是一个演示

以防万一有可能是领先的空白,我会使用一个更安全的版本:

 /^(?!\s*(?:-{3,}|content-)).+$/igm 

最后,如果您需要匹配空行,请使用.*replace.+

这是诀窍:

 /^(?!\s*(-|Content)).*/ 

看演示