Ho provato ad usare questa costante:
codice:
const VAT="/(?xi)^((AT)?U[0-9]{8}|(BE)?0[0-9]{9}|(BG)?[0-9]{9,10}|(HR)?[0-9]{11}|(CY)?[0-9]{8}L|(CZ)?[0-9]{8,10}|(DE)?[0-9]{9}|(DK)?[0-9]{8}|(EE)?[0-9]{9}|(EL|GR)?[0-9]{9}|(ES)?[A-Z][0-9]{7}(?:[0-9]|[A-Z])|(FI)?[0-9]{8} |(FR)?[0-9A-Z]{2}[0-9]{9}|(GB)?([0-9]{9}([0-9]{3})?|[A-Z]{2}[0-9]{3})|(HU)?[0-9]{8}|(IE)?[0-9]S[0-9]{5}L|(IT)?[0-9]{11}|(LT)?([0-9]{9}|[0-9]{12})|(LU)?[0-9]{8}|(LV)?[0-9]{11}|(MT)?[0-9]{8}|(NL)?[0-9]{9}B[0-9]{2}|(PL)?[0-9]{10}|(PT)?[0-9]{9}|(RO)?[0-9]{2,10}|(SE)?[0-9]{12}|(SI)?[0-9]{8}|(SK)?[0-9]{10})$/";
C'e' qualcosa che sicuramente sbaglio all'inizio o alla fine, perche' da php non me la considera, e utilizzandola da javascript mi da SyntaxError: invalid regexp group.
Se ad esempio utilizzo questa, che e' valida SOLO per la spagna, mi funziona sia da php che da javascript(ovviamente mi valida solo i VAT spagnoli):
codice:
const DNICIFNIE = "/^[XYZ]\d{7,8}[A-Z]$|^(\d{8})([A-Z])$|^([ABCDEFGHJKLMNPQRSUVW])(\d{7})([0-9A-J])$/";
Inoltre come potrei fare a negare la const VAT, in modo che non mi validi tutto quello che NON E' un VAT?
Grazie,
Roberto