Apa cara terbaik untuk membagi VAT number menjadi beberapa segmen? Bagian pertama adalah kode negara, selalu 2 alfanumerik. Kedua adalah jumlah yang tersisa.

Sebagai contoh: NL820471616B01 harus dipisah menjadi NL dan 820471616B01

BE0824148721 harus dibagi menjadi BE dan 0824148721

ATU12345678 harus dibagi menjadi AT dan U12345678

Saya telah mencoba ini tetapi itu hanya cocok ketika ada 2 angka alfanumerik.

$vat_clean = preg_replace('/[^a-zA-Z0-9]/', '', $_GET['vat']);
$vat_country = substr($vat_clean,2,25);
$vat_code = substr($vat_clean,2);
0
Muiter 5 Januari 2021, 11:59

2 jawaban

Jawaban Terbaik

Karena tampaknya nomor PPN apa pun dimulai dengan 2 nomor alfanumerik, saya dapat mengubah kode yang ada agar berfungsi sepenuhnya.

$vat_clean = preg_replace('/[^a-zA-Z0-9]/', '', $_GET['vat']);
$vat_country = substr($vat_clean,2,15);
$vat_code = substr($vat_clean,0,2);
0
Muiter 5 Januari 2021, 15:29
preg_match("/([a-zA-Z]+)(\\d+)/", "u1236777", $matches);
print("Sring: " . $matches[1] . "\n");//u
print("Int: " . $matches[2] . "\n");//1236777

//*******//

preg_match("/([a-zA-Z]+)(\\d+)/", "NL820471616B01", $matches);
print("Sring: " . $matches[1] . "\n");//NL
print("Int: " . $matches[2] . "\n");//820471616B01

Kita dapat menjalankan ekspresi reguler yang akan membagi string dan angka

0
Eden Moshe 5 Januari 2021, 09:16