String tdKeyExtAttributeValues =
"[{"'attrValue":"65g/3个。品味着"下午嗨到晚上",西班牙式休闲文化。"}
,{"attrValue":"大家伙们:"你是大各自"晚上好?"}
,{"keyExtAttrName":"minQty","keyExtAttrId":"042658ec-203d-40cb-894c-7c69f7571e29","attrValue":"0"}]";
// 替换匹配[中文字符后的",同时去除"后的}符合的字符串]
String s = tdKeyExtAttributeValues.replaceAll("(?<=[\\u4E00-\\u9FA5])\\\"(?![},])", "'")
// 替换匹配前后有中文标点符号的 " 的字符串
.replaceAll("(?<=[\\u3002\\uff1b\\uff0c\\uff1a\\u201c\\u201d\\uff08\\uff09\\u3001\\uff1f\\u300a\\u300b!])\\\"(?![}])|(?<!:)\\\"(?=[\\u3002\\uff1b\\uff0c\\uff1a\\u201c\\u201d\\uff08\\uff09\\u3001\\uff1f\\u300a\\u300b!])", ":'");
// 将json字符串转换成对象
List<Map<String, String>> tdKeyExtAttributeValuesList9 = JSON.parseObject(s, ArrayList.class);
正则表达式 - (?!), (?:\), (?=) 知识转
1。https://www.cnblogs.com/allen2333/p/9835654.html
2。https://www.cnblogs.com/qize/p/12887542.html
正则表达式中文字符
[\u4E00-\u9FA5]
正则表达式中文符号
[\u3002\uff1b\uff0c\uff1a\u201c\u201d\uff08\uff09\u3001\uff1f\u300a\u300b!]
。 ; , : “ ”( ) 、 ? 《 》! 这些标点符号