Я не могу понять, как разделить адрес, где номер улицы идет после названия улицы.
Предположим, что адрес является одним из следующих:
str='street name, 12B, 1234, The Hague, the Netherlands'
str2='street name 12B 1234AB The Hague, the Netherlands'
str3='street name 12B 1234AB, $ ^ The Hague, the Netherlands'
Я хочу разделить эти адреса на:
1) запятые или, в идеале, без альфа / пунктуациив общем (например, ^ @).Эти разделители следует удалить;
2) число, за которым могут следовать буквы без удаления.
Ожидаемый результат:
['street name', '12B', '1234', 'The Hague', 'the Netherlands']
Я пробую варианты str.split (/ (\ d + [a-zA-Z] *) / g), который по-прежнему сохраняет элементы вроде ", "(почему?).
Я также попробовал оператор ИЛИ |между разделителями 1 и 2, но безуспешно.
Этот становится ближе:
str.split(/(\d+[a-zA-Z]*[,])/g).map(x=>x.trim().replace(/[,.;]/g,''))
[ "street name, ", "12B,", " ", "1234,", " The Hague, the Netherlands" ]