There are many ways to share contact details. One is to use an app provided mechanism, which can ask confirmation about sending and receiving contacts. Another one is to just type them into a message. The confirmation of the intention to send is implicit but no confirmation is possible at the receiving end: they read the message and get the contact, willing or unwilling. All they can do is delete it before remembering it and report the other party. There is a provision about reporting unwanted interactions.
About circumvention, one could think about a way to detect contact details in messages. There are several problems with that.
1. If it warns the sender, the sender will try another way until the obfuscated contact passes unnoticed (text, image, vocal, link, whatever.)
2. If it automatically reports the sender there will be many false positives, some due to copy and paste, keyboard autocompletion, etc.