public static Set<String> splitValuePairDelimitedString(String string,String delimiter,List<String> identifiers){
  String identifierSegment="";
  for (  String identifier : identifiers) {
    if (identifierSegment.length() != 0) {
      identifierSegment+="|";
    }
    identifierSegment+=identifier;
  }
  String regex=delimiter + "(?=(" + identifierSegment+ ")=)";
  return new HashSet<>(Arrays.asList(string.split(regex)));
}

public static Set < String > splitValuePairDelimitedString ( String string , String delimiter , List < String > identifiers ) { String identifierSegment = "" ; for ( String identifier : identifiers ) { if ( identifierSegment . length ( ) != 0 ) { identifierSegment += "|" ; } identifierSegment += identifier ; } String regex = delimiter + "(?=(" + identifierSegment + ")=)" ; return new HashSet < > ( Arrays . asList ( string . split ( regex ) ) ) ; }
splits a delimited string of value pairs ( of the form identifier = value ) into a set of strings .
