java使用正则表达式替换json值
String inputJson = "{\r\n" +
" \"fullName\" : \"Hamo\",\r\n" +
" \"staff\" : false,\r\n" +
" \"supr\" : true,\r\n" +
" \"permissions\" : [ \"Perm1\", \"Perm2\" ],\r\n" +
" \"services\" : [ \"Serv1\", \"Serv2\" ],\r\n" +
" \"authToken\" : \"1234567890abcdefghaijklmnopqrstuvwxyz\",\r\n" +
" \"customerId\" : 12345,\r\n" +
" \"clients\" : [ 1, 3, 8 ],\r\n" +
" \"wts\" : false,\r\n" +
//yyyy-MM-dd
" \"testDate\" : \"1982-09-21\"\r\n" +
"}";
我需要用另一个使用正则表达式的字符串替换authToken值。 此问题已被编辑,因为未正确提问
# 1 楼答案
没有JSON类,仍然存在:
这假设authToken不包含美元
$
# 2 楼答案
除了使用方便的json编辑库,还可以使用regexp:
解释如下:
最后,将整个匹配表达式替换为
"$1" + desiredAuthToken
,其中$1
基本上是第一个捕获组的内容。(在这种情况下是\"authToken\" : \"
)