Using "for" in this context indicates a period of time that has passed since the last visit to Portsmouth. "Since" would imply the specific moment in time when the last visit occurred, and "after" is not suitable in this sentence as it does not accurately convey the length of time that has passed.
I haven't been to Portsmouth for three years.
Using "for" in this context indicates a period of time that has passed since the last visit to Portsmouth. "Since" would imply the specific moment in time when the last visit occurred, and "after" is not suitable in this sentence as it does not accurately convey the length of time that has passed.