Регулярное выражение
Всем привет!
К сожалению в регулярных выражениях не силен((( Помогите разбить строку в массив по аналогии со split: // На вход var str = "test[0].array[1]"; // На выход var result = ["test", 0, "array", 1]; Заранее спасибо! :) :victory: |
Реализовал в таком виде, но уверен, что есть более красивые варианты)
"test[0].array[1]".replace(/\[/g, '.').replace(/]/g, '').split('.'); result: ["test", "0", "array", "1"] |
var str = "test[0].array[1]"; var out = str.replace(/([^\.]*?)\[(.*?)\]/g,'"$1",$2').replace('.',','); alert(out) |
Цитата:
|
var str = "test[0].array[1]"; alert( str.match(/\w+/g) ); |
Dorian_bs,
Вы правите исходник задачи то так то эдак, поправил цифры без кавычек По идее, логичнее бы объектовую запись result: {"test":0, "array":1} |
Deff,
Спасибо! |
Decode,
Спасибо! Очень красивое решение) |
Deff,
просто может быть и так "test[0][2].array[1][2][3]" |
alert( "test[0][2].array[1][2][3]".split(/\[|\][\.\[]?/) ); |
Часовой пояс GMT +3, время: 21:40. |