var str = ‘iphone android “firefox os”’ という文字列が、
配列で分割されて var arr = [“iphone”, “android”, “firefox os”]
みたいになる関数。
function parse(text/*string*/){
var tokenizer=new RegExp('[ ]|[^ "][^ ]*|"(?:[^"]|"")*"','g');
var field=0,data=[''];
text.replace(tokenizer,function(token){
switch(token){
case ' ':
case ' ':
data[++field]='';
break;
default:
data[field]=(token.charAt(0)!='"')?token:token.slice(1,-1).replace(/""/g,'"');
}
});
return data;
}