Flex ActionScript 使用正则解析js代码
需要要Flex 程序内部,使用正则表达式解析下面的js代码:
(下面的代码来源于:http://j.maxmind.com/app/geoip.js)
function geoip_country_code() { return 'CN'; }
function geoip_country_name() { return 'China'; }
function geoip_city() { return 'Wuhan'; }
function geoip_region() { return '12'; }
function geoip_region_name() { return 'Hubei'; }
function geoip_latitude() { return '30.5801'; }
function geoip_longitude() { return '114.2734'; }
function geoip_postal_code() { return ''; }
function geoip_area_code() { return ''; }
function geoip_metro_code() { return ''; }
var reg:RegExp = /function\s*(.*)\(\)\s*{\s*return\s*'(.*)'.*}/ig;
var str:String = txt.text;
var obj:Object = reg.exec(str);
var xml:XML;
var xmls:String;
while (obj != null)
{
xmls += "<name><fun>" + obj[1] + "</fun><value>" + obj[2] + "</value></name>\n";
obj = reg.exec(str);
}
xml = XML("<body>" + xmls + "</body>");