public String[] transform(final String value) { String firstName = null; String lastName = null; String middleName = null; String titulation = null; if (value != null) { for (final NamedPattern<NamePart> namedPattern : namedPatterns) { final NamedPatternMatch<NamePart> match = namedPattern.match(value); if (match != null) { firstName = match.get(NamePart.FIRSTNAME); lastName = match.get(NamePart.LASTNAME); middleName = match.get(NamePart.MIDDLENAME); titulation = match.get(NamePart.TITULATION); break; } } } return new String[] { firstName, lastName, middleName, titulation }; }
/** * Matches a string against this named pattern. * * @param string * the string to match * @return a match object, or null if there was no match */ public NamedPatternMatch<E> match(final String string) { final Matcher matcher = pattern.matcher(string); while (matcher.find()) { final int start = matcher.start(); final int end = matcher.end(); if (start == 0 && end == string.length()) { final Map<E, String> resultMap = new EnumMap<>(groupEnum); final Set<Entry<E, Integer>> entries = groupIndexes.entrySet(); for (final Entry<E, Integer> entry : entries) { final E group = entry.getKey(); final Integer groupIndex = entry.getValue(); final String result = matcher.group(groupIndex); resultMap.put(group, result); } return new NamedPatternMatch<>(resultMap); } } return null; }
public String[] transform(final String value) { String username = null; String domain = null; if (value != null) { final NamedPatternMatch<EmailPart> match = EMAIL_PATTERN.match(value); if (match != null) { username = match.get(EmailPart.USERNAME); domain = match.get(EmailPart.DOMAIN); } } return new String[] { username, domain }; }
protected boolean initializeFromMatch(final JdbcDatastore datastore, final NamedPattern<UrlPart> matchingUrlTemplate, final NamedPatternMatch<UrlPart> match) { _hostnameTextField.setText(match.get(UrlPart.HOSTNAME)); _portTextField.setText(match.get(UrlPart.PORT)); _databaseTextField.setText(match.get(UrlPart.DATABASE)); _param1TextField.setText(match.get(UrlPart.PARAM1)); _param2TextField.setText(match.get(UrlPart.PARAM2)); _param3TextField.setText(match.get(UrlPart.PARAM3)); _param4TextField.setText(match.get(UrlPart.PARAM4)); return true; }