EMMetadata{data={mail=123456@qq.com, phone=123456, avatarurl=http://123456, nickname=王者荣耀}}
希望可以java或者其他语言,转换成为Map或者json。例如:
{"data":{"mail":"123456@qq.com", "phone":"123456", "avatarurl":"http://123456", "nickname":"王者荣耀"}
我思考了很长时间都没有结果,正则表达式似乎很难适应
这是Dart的代码参考,这种正则表达式很难匹配到所有数据
static Map JsonConvertUser(String text) {
String string = text.replaceAll("EMMetadata{data=", '').replaceAll("=", ':');
string = string.substring(0, string.length - 1);
final string2 = string.replaceAll("\"", "");
final quotedString =
string2.replaceAllMapped(RegExp(r'\b\w+\b|[\u4e00-\u9fa5]+'), (match) {
return '"${match.group(0)}"';
});
final decoded = json.decode(quotedString);
return decoded;
}
来一个最笨的方法