如何用正则提取下面内容中的 a b c..........
data {
msg a;
msg b;
msg c;
}
上面的内容还有可能会有更多,如:
msg d;
msg e;
msg f;用正则提取出后并保存成json如:
['a','b','c']
data {
msg a;
msg b;
msg c;
}
上面的内容还有可能会有更多,如:
msg d;
msg e;
msg f;用正则提取出后并保存成json如:
['a','b','c']
var str = 'data { \
msg a; \
msg b; \
msg c; \
} \
'
var reg = /[a-z](?=;)/gi;
var arr = str.match(reg);
alert(arr?"['"+arr.join("','")+"']":'null');
</script>
var str = 'data {\nmsg a;\nmsg b;\nmsg c;\n}',
pattern = /\n?msg\s+([^;\n]+)\s*;/ig, msg, ret = [];
while((msg = pattern.exec(str)) != null){
ret.push(msg[1]);
}
alert("['" + ret.join("','") + "']");
var str = 'data { \
msg aa,a; \
msg b; \
msg c; \
} \
'
var reg = /[a-z](?=;)/gi;
var arr = str.match(reg);
alert(arr?"['"+arr.join("','")+"']":'null');
</script>只取最后一位了?
var s = 'data { \
msg a; \
msg b; \
msg c; \
msg bb; \
msg ccc; \
msg kk123; \
msg aadaf ; \
msg a12, b12 , c12 ; \
}';
var regex = /[_a-zA-Z$][_a-zA-Z0-9$]*(?= *[,;])/g;
var result = s.match(regex);
alert("['" + result.join("', '") + "']");
}