There are so many questions on regex-negation here on SO.
I am not sure I understand why people feel the need to negate a regex.
Why not use something like grep -v that shows only the results that do not match the regex?
$ ls
april  august  december  february  january  july  june  march  may  november  october  september
$ ls | grep ber
december
november
october
september
$ ls | grep -v ber
april
august
february
january
july
june
march
may
 
     
     
     
    