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