Memisahkan array dengan lebih banyak digit

Oct 07 2020

Mari kita asumsikan saya memiliki string berikut:

(255+23*452-2)

Lalu saya gunakan

string.split("")

jadi saya mendapatkan array. Tetapi masalahnya adalah saya hanya mendapatkan array seperti ini: [2,5,5,+2,3,*...]yang tidak saya butuhkan. Saya perlu mendapatkan array seperti ini:[255, +, 23, *, 452, -, 2, )...etc]

Terima kasih atas sarannya

Jawaban

4 RoboRobok Oct 07 2020 at 17:38

Cocokkan semua yang berupa sekelompok digit, atau bukan digit sama sekali:

const string = "(255+23*452-2)";
const components = string.match(/\d+|\D/g);
// ["(", "255", "+", "23", "*", "452", "-", "2", ")"]