在下面的字符串中
String toBeFormatted= "[[LngLatAlt{longitude=-7.125924901999952, latitude=33.831783175000055, altitude=NaN},
LngLatAlt{longitude=-5.401396163999948, latitude=35.92213140900003, altitude=NaN}]]"
1-我需要替换所有的“ LngLatAlt {longitude =” 用开括号“ [”
2-还需要替换所有中间的“,纬度= 33.831783175000055,海拔= NaN}” 用“,33.831783175000055]”
这样,我的字符串结果:
"[[[-7.125924901999952,33.831783175000055],[-5.401396163999948,35.92213140900003]]]"
尝试以下reg exp:
String regexTarget = "(\\[\\[LngLatAlt\\{longitude=)";
toBeFormatted.replaceAll(regexTarget, "\\[\\[\\[");
String regexTarget0 = "(, altitude=NaN\\}, LngLatAlt\\{longitude=)";
toBeFormatted.replaceAll(regexTarget0, "],\\[");
String regexTarget1 = "(, latitude=)";
toBeFormatted.replaceAll(regexTarget1, " ,");
String regexTarget2 = "(, altitude=NaN\\})";
toBeFormatted.replaceAll(regexTarget2, "]");
但似乎不起作用。
谢谢您的帮助。
尝试类似:
String result = toBeFormatted.replaceAll("LngLatAlt\\{longitude=([^,]+), latitude=([^,]+), ([^}]+)\\}", "[$1, $2]");
System.out.println(result);