Для изменения строки в данном случае лучше использовать регулярное выражение: найти некоторое поле по имени, проверить, что соответствующее значение записано как строка и убрать кавычки для значения.
public static String convertFieldToNum(String json, String fieldName) {
return json.replaceAll(String.format("(\"%s\")\\s*:\\s*\"(\\d+)\"", fieldName), "$1\\:$2");
}
Тест:
String json = "{\"fields\":{\"summary\":\"TEST 3\",\"issuetype\":{\"id\":\"10100\"},\"customfield_10106\":\"797\",\"project\":{\"key\":\"SP\"}},\"properties\":[{\"key\":\"jira_linker_incoming_sync\",\"value\":\"true\"},{\"key\":\"remote_issue_link\",\"value\":\"https:\\/\\/jira.test.autentica.lv\\/browse\\/BUR-378\"},{\"key\":\"remote_issue_key\",\"value\":\"BUR-378\"}]}";
System.out.println(convertFieldToNum(json, "customfield_10106"));
Вывод:
{"fields":{"summary":"TEST 3","issuetype":{"id":"10100"},"customfield_10106":797,"project":{"key":"SP"}},"properties":[{"key":"jira_linker_incoming_sync","value":"true"},{"key":"remote_issue_link","value":"https:\/\/jira.test.autentica.lv\/browse\/BUR-378"},{"key":"remote_issue_key","value":"BUR-378"}]}