我有一个像
这样的字符串这个{manish} {abc} {123}是我的字符串CopyResult = {Region:us-west-2,AmiId:ami-0f60f66f},{Region:us-west-1,AmiId:ami-2884de48}, manish kumar
我想获得像
这样的子字符串{ Region : us-west-2, AmiId : ami-0f60f66f},{ Region : us-west-1, AmiId : ami-2884de48}
获得之后我想将该字符串转换为JSON。
我正在尝试像
这样的代码 var pt = /CopyResult=.*/;
var copyAmisResult = copyAmilog.match(pt);
console.log("copyAmilog -- " + copyAmisResult);
输出
CopyResult = {Region:us-west-2,AmiId:ami-0f60f66f},{Region:us-west-1,AmiId:ami-2884de48},
有人可以建议我修改正则表达式,以便我可以得到我的输出。
PS: - 我需要从字符串的开头删除CopyResult=
,从字符串的最后一个删除,
,并且它还可以有多个{}
。之后有一种更简单的方法将该字符串转换为JSON对象。 JSON.parse()有用吗?
答案 0 :(得分:1)
您可以使用此正则表达式来获取所需的子字符串,但我不确定如何将其转换为对象
var str = "This {manish } {abc} {123 } is my stringCopyResult={ Region : us-west-2, AmiId : ami-0f60f66f},{ Region : us-west-1, AmiId : ami-2884de48}, manish kumar";
console.log( str.match(/=\s*({.*})/)[1]);
答案 1 :(得分:0)
您可以获得以下数据。
var copyAmilog = 'This {manish } {abc} {123 } is my stringCopyResult={ Region : us-west-2, AmiId : ami-0f60f66f},{ Region : us-west-1, AmiId : ami-2884de48}, manish kumar'
var pt = /stringCopyResult=(.*),/;
var copyAmisResult = copyAmilog.match(pt);
console.log("copyAmilog -- " , copyAmisResult[1]);