All perfect praise be to Allaah, The Lord of the worlds. I testify that there is none worthy of worship except Allaah, and that Muhammad, sallallaahu ‘alayhiwasallam, is His slave and messenger.
It is religiously permissible to give Zakah to your son who needs to get married since bearing these costs is not a duty on you. Were he still young, you would not be allowed to pay Zakah to him. But, as he has become an adult and is able to earn a living, you are not obliged to spend on him or his education. It is reported in Sunan Al-Athram that Ibn‘Abbaas said: “If they are relatives and you do not support them as dependents, yet give them from your Zakah. However, if you support them, do not pay Zakah to them or to any of your dependents." However, it is a condition that a person should intend it as Zakah when he pays the money and not afterwards. This is because actions are judged on the basis of intentions, as is commonly known.
Hence, you may not regard your past expenses on the marriage or education of your son as Zakah since you did not intend these payments as Zakah.
Allaah Knows best.