J'essaie de créer une méthode qui prend un paramètre String et renvoie ensuite un tableau de chaînes bidimensionnel de noms et de valeurs de paramètres.Java - Liste des paramètres de Tokenize
protected final String[][] setParams (String parms) {
String[][] params;
int i = 0;
Pattern p = Pattern.compile(NEED_REGEX_HERE);
Matcher m = p.matcher(parms);
params = String[m.groupCount()][2];
while (m.find()) {
params[i][0] = m.group(i).subString(0,m.group(i).indexOf('='));
params[i][1] = m.group(i).subString(m.group(i).indexOf('='));
i++;
}
return params;
}
Quelques exemples d'entrée seraient (entre guillemets):
"Name=Ryan;\;Name=John"
"Name=Ryan;Name=John"
"Name=Ryan"
"Name=Ryan;Index=1"
Ainsi, un ";" est le délimiteur de la liste et l'opérateur d'affectation "=" indique un paramètre valide ie. "\" est une valeur de rejet. Fondamentalement, je suis à la recherche d'une regex qui me permettra de le faire, ou si quelqu'un peut en fournir une, une solution plus élégante.
Avez-vous envisagé de retourner une carte> à la place? –
MAK