I havn't lived in Shanghai for more than 20 years.
sb have done sth.否定形式为 sb have not/havn't done sth.