return sb.toString();
}
public static PlacePropertyValueList parse(String token) {
final String globalFlag = "g";
RegExp regExp = RegExp.compile("([^" + PROPERTY_VALUE_SEPARATOR + "]+)" + PROPERTY_VALUE_SEPARATOR + "([^" + PROPERTY_VALUE_ITEM_SEPARATOR + "]+)" + PROPERTY_VALUE_ITEM_SEPARATOR, globalFlag);
MatchResult matchResult = regExp.exec(token);
Builder resultBuilder = builder();
while(matchResult != null) {
String name = URL.decodeQueryString(matchResult.getGroup(1));
String value = URL.decodeQueryString(matchResult.getGroup(2));
resultBuilder.set(name, value);
final int matchLength = matchResult.getGroup(0).length();
final int matchStart = matchResult.getIndex();
final int nextIndex = matchStart + matchLength;
regExp.setLastIndex(nextIndex);
matchResult = regExp.exec(token);
}
return resultBuilder.build();
}