GNU tar lives on featuritis, so naturally also has some options for that.
If you just want to remove a few path segments, then
--strip=n will often do:
tar xvzf tgz --strip=1
But it's also possible to regex-rewrite the files to be extracted (flags are
--xform and accept ereg with the
tar xvzf tgz --xform='s#^[^/]+#.#x'
# or 's#^.+/##x' for discarding all paths
For listing a tar you need the additional
tar tvzf tgz --show-transformed --strip=1 --xform='s/abc/xyz/x'
I believe the rewriting options also work for packing, not just for extracting. But
pax has obviously a nicer syntax.