2013-04-23 4 views
0

У меня есть полная строка, состоящая из чего-то вроде этого [(data1.1) (data1.2)] [(data2.1) (data2.1)]Javascript получить строку из скобок соответствует регулярному выражению

Айв читайте, вы можете сделать что-то умное с функцией соответствия и регулярным выражением. Я хочу два массива с данными, загруженными из круглых скобок. Как я это делаю? Пожалуйста, используйте мою строку в качестве примера.

+0

Заблаговременно отправьте свой код JavaScript. – elclanrs

ответ

0

Я не был полностью уверен, что вы были после, но я предполагаю, что это

var what = '[(data1.1)(data1.2)][(data2.1)(data2.2)]', 
    have = [], 
    you = [], 
    tried = /\[\(([^)]*)\)\(([^)]*)\)\]/g; 
what.replace(tried, function (use, brain, forthis) { 
    you.push((have.push(brain), forthis)); 
}); 
console.log(have, you); 
// ["data1.1", "data2.1"] ["data1.2", "data2.2"] 
1

Я придумал эту мерзость:

var array = s.replace(/^\[|\]$/g,'').split('][').map(function(a){  
    return a.replace(/^\(|\)$/g,'').split(')(') 
}); 

http://jsfiddle.net/8kLhc/

Кроме того, если вам намеренно сохранять или передавать данные, подобные этому, тогда вы действительно должны взглянуть на JSON или на правильный дизайн базы данных.

 Смежные вопросы

  • Нет связанных вопросов^_^