Not that I know. Best you just tar it without leading samba or just extract it at some tmp directory and mv only the part to the destination that you need.
You can limit what gets extracted from the archive by using a filename. For instance, going with your example, to extract only a.txt you could issue
tar -xvf samba.tar samba/a.txt
but this would still create a directory "./samba" and put "a.txt there. It would only prevent the other files getting untarred too.
If you do not want this or for some reason cannot mv the files afterwards to different locations you will have to create the tar archive in such a way that allows to extract files to a flat hierarchy. You could pipe a list of filenames to tar like this:
echo *txt | tar -cvf my.tar
"my.tar" would contain all the *txt files in the current directory and you could extract an arbitrary subset of these with the mechanism sketched above.
Well, this is not the way I would do it, but in theory you could create a symbolic link, linking samba to the current directory and untar in that (current) directory
Not sure why you would do it, but it is possible by creating the symlink.