Сообщение от with-love-from-siberia
|
Так как задача описана сейчас - можно реализовать разным способами, но, скорее всего, это будет решением далеким от требуемого.
|
Так как задача подана сейчас - можно решить только анальным способом. Все внимание сюда:
alert(result[1]); //Выводит 'bd#!'
alert(result[1][0]); //Выводит 'b',а нужно 'bd';
alert(result[1][1]); //Выводит 'd',а нужно '#!';
Нет, можно конечно сделать и как-то так, лол:
result=[[],['bd','#!','bd#!']]
Array.prototype.toString=function(){return this[2]}
alert(result[1]);
alert(result[1][0]);
alert(result[1][1]);
...а решение то вот:
var r = /([a-z]+)([^a-z]+)/gi;
var str = 'dY%bd#!cL!%h#dY*';
var result=[],i=0;
while(result[i++]=r.exec(str));
alert(result[1][0]);
alert(result[1][1]);
alert(result[1][2]);