在数字之间的字符串中添加引号

Rut*_*ock -3 javascript split

我正在尝试将字符串转换为数组,但是我遇到了一些麻烦。字符串的缩短示例 -

"1 Afghanistan,2 Albania,3 Algeria,4 American Samoa,5 Andorra,6 Angola,7 Anguilla,8 Antarctica,9 Antigua and Barbuda,10 Argentina,11 Armenia,12 Aruba,208 Tanzania, United Republic of,209 Thailand"
Run Code Online (Sandbox Code Playgroud)

这里的问题是,我想用逗号分隔它,但是某些元素似乎也在使用逗号,就像208 Tanzania, United Republic of应该保持原样。

那么我可以在数字之间拆分它而不是通过 .split(',')

Mam*_*mun 5

您可以使用 RegEx Positive Lookahead匹配所有后跟数字的逗号:

var countries = "1 Afghanistan,2 Albania,3 Algeria,4 American Samoa,5 Andorra,6 Angola,7 Anguilla,8 Antarctica,9 Antigua and Barbuda,10 Argentina,11 Armenia,12 Aruba,208 Tanzania, United Republic of,209 Thailand";

countries = countries.split(/,(?=\d+)/)
console.log(countries);
Run Code Online (Sandbox Code Playgroud)