How to count occurence of string in groovy

Viewed 27

input:

[ { "Org" : "Test", "result": "Talent Partner, Partner, Partner" } ]

Expected output:

[ { "Org" : "Test", "TP": "1", "Partner" : "2" } ]

Below is the script, However I am not getting the expected output:

def slurper = new JsonSlurper();
def jsonDoc = slurper.parseText(doc);
def NoOfTP = 0;
def Partner = 0;
def NumberOfElements = jsonDoc.result.split(',');
for (int p = 0; p < NumberOfElements; p++) {
    if (NumberOfElements[p] == 'Talent Partner') {
        NoOfTP = NoOfTP + 1;
    } else if (NumberOfElements[p] == 'Partner') {
        Partner = Partner + 1;
    }
}
props.setProperty("document.dynamic.userdefined.NoOfTP", NoOfTP);
props.setProperty("document.dynamic.userdefined.NoOfTP", Partner);

is = new ByteArrayInputStream(JsonOutput.toJson(jsonDoc).getBytes());
dataContext.storeStream(is, props);
}
0 Answers
Related