Javascript 将长字符串格式化为JSON
我有一个从外部数据源获取的字符串。看起来是这样的:Javascript 将长字符串格式化为JSON,javascript,json,Javascript,Json,我有一个从外部数据源获取的字符串。看起来是这样的: var myString = "Worker Management System : Your request has been submitted ________________________________________ Your Account User Info: Name : Doe, John, A ID : JDOE123 Email :
var myString = "Worker Management System :
Your request has been submitted
________________________________________
Your Account User Info:
Name : Doe, John, A
ID : JDOE123
Email :
Title : Worker
BusinessUnit : BARN
Department : PIGS
EmployeeID :
SupervisorName : Doe, Jane, B
HireDate : 02/22/2002
Role : Feed Pigs;
ManagerEmail : JaneDoe@mail.com
City : New York
State : NY
ZipCode : 12345
Phone : --
"
我想把它解析成JSON(或者我可以使用的东西),这样我就可以调用myString.Name并让它返回Doe,John,a
这可能吗?对于我来说,修改获取这个字符串的方式不是一个选项,我只是尝试格式化它,以便可以轻松地从中提取数据
我研究了Douglas Crockford的JSON.parse
,但如果我的字符串格式不正确,这对我没有任何好处。string.prototype.trim=function(){返回这个.replace(/^\s+$\s+$/g',);
String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g, '');};
function my_string_to_object(myString)
{
var tmp = myString.split('Your Account User Info: ',2);
var tmp = tmp[1].split("\n");
var obj = {};
for(var k=0;k<tmp.length;k++) {
var line = tmp[k].split(' : ');
if(typeof(line[1]) != 'undefined') {
obj[ line[0].trim() ] = line[1].trim();
}
}
return obj;
}
函数my_string_to_对象(myString)
{
var tmp=myString.split('您的帐户用户信息:',2);
var tmp=tmp[1]。拆分(“\n”);
var obj={};
对于(var k=0;kfirst,您必须将字符串转换为对象。这可以通过文本解析完成。JSON在这里没有任何作用。这甚至不是有效的JavaScript。var myString=
部分是否来自外部源代码?@Bergi:是的,我知道,我太懒了