void append(MatchResult match, TextBuffer dest) { if (prefix != null) dest.append(prefix); if (index == null) return; int i = index; if (i >= match.pattern().groupCount()) return; if (match.isCaptured(i)) match.getGroup(i, dest, modes); }
/** * Returns a matcher for a match result (in a performance-friendly way). * <code>groupId</code> parameter specifies which group is a target. * * @param groupId which group is a target; either positive integer(group id), or one of MatchResult.MATCH,MatchResult.PREFIX,MatchResult.SUFFIX,MatchResult.TARGET. */ public Matcher matcher(MatchResult res, int groupId) { Matcher m = new Matcher(this); if (res instanceof Matcher) { m.setTarget((Matcher) res, groupId); } else { m.setTarget(res.targetChars(), res.start(groupId) + res.targetStart(), res.length(groupId)); } return m; }
@Override public void appendSubstitution(MatchResult match, TextBuffer dest) { if(match.isCaptured("at_sign")) else if(match.isCaptured("caret_sign")) else if(match.isCaptured("dollar_sign")) else if(match.isCaptured("tilde_sign")) else if(match.isCaptured("name")) else if(match.isCaptured("Name")) else if(match.isCaptured("name_s")) else if(match.isCaptured("Name_s")) else if(match.isCaptured("i")) else if(match.isCaptured("I")) else if(match.isCaptured("me")) else if(match.isCaptured("Me")) else if(match.isCaptured("my")) else if(match.isCaptured("My"))
public void appendSubstitution(MatchResult match, TextBuffer dest) { String translated = match.group(0); if(translated == null) { return; } translated = translated.toLowerCase(); translated = vocabulary.get(translated); if(translated == null) { dest.append(match.group(0)); return; } char[] chars = translated.toCharArray(); if(Category.Lu.contains(match.charAt(0))) chars[0] = Character.toUpperCase(chars[0]); if(match.length() > 1 && Category.Lu.contains(match.charAt(1))) { for (int i = 1; i < chars.length; i++) { chars[i] = Character.toUpperCase(chars[i]); } } dest.append(chars, 0, chars.length); } }
@Override public void appendSubstitution(MatchResult match, TextBuffer dest) { String m = match.group(0); if(m == null) return; for (Map.Entry<String, String> kv : dictionary.entrySet()) { if (kv.getKey().equals(m)) { dest.append(kv.getValue()); return; } } dest.append(m); } }
public String value(MatchResult mr) { TextBuffer dest = Replacer.wrap(new StringBuilder(mr.length())); appendSubstitution(mr, dest); return dest.toString(); }
@Override public void appendSubstitution(MatchResult match, TextBuffer dest) { //dest.append(lookup(match.group(0))); temp.setLength(0); match.getGroup(0, temp); writeLookup(dest, temp); } }
@Override public void appendSubstitution(MatchResult match, TextBuffer dest) { FakeLanguageGen lang = FakeLanguageGen.randomLanguage(rng.nextLong()); randomLanguages.add(lang); if(match.isCaptured(1)) { lang = FakeLanguageGen.randomLanguage(rng.nextLong()); randomLanguages.add(lang); do { latestGenerated = randomLanguages.get(0).word(rng, true, Math.min(rng.between(2, 5), rng.between(1, 5))) + "-" + randomLanguages.get(1).word(rng, true, Math.min(rng.between(2, 5), rng.between(1, 5))); }while (latestGenerated.length() <= 5 || latestGenerated.length() >= 17); dest.append(latestGenerated); } else { do{ latestGenerated = lang.word(rng, true, Math.min(rng.between(2, 5), rng.between(1, 5))); }while (latestGenerated.length() <= 2 || latestGenerated.length() >= 11); dest.append(latestGenerated); } } }
/** * Just as above, yet with symbolic group name. * * @throws NullPointerException if there is no group with such name */ public Matcher matcher(MatchResult res, String groupName) { Integer id = res.pattern().groupId(groupName); if (id == null) throw new IllegalArgumentException("group not found:" + groupName); int group = id; return matcher(res, group); }
@Override public void appendSubstitution(MatchResult match, TextBuffer dest) { String m = match.group(0); if(m == null) return; for (Map.Entry<String, String> kv : dictionary.entrySet()) { if (kv.getKey().equals(m)) { dest.append(kv.getValue()); return; } } dest.append(m); } }
public String value(MatchResult mr) { TextBuffer dest = Replacer.wrap(new StringBuilder(mr.length())); appendSubstitution(mr, dest); return dest.toString(); }
void append(MatchResult match, TextBuffer dest, boolean pass) { if (!pass) { if (prefix != null) dest.append(prefix); if (str != null) dest.append(str); } else match.getGroup(0, dest); }
@Override public void appendSubstitution(MatchResult match, TextBuffer dest) { if (match.isCaptured(1)) { do { latestGenerated = language.word(rng, true, Math.min(rng.between(2, 5), rng.between(1, 5))) + "-" + language.word(rng, true, Math.min(rng.between(2, 5), rng.between(1, 5))); }while (latestGenerated.length() <= 5 || latestGenerated.length() >= 17); dest.append(latestGenerated); } else { do{ latestGenerated = language.word(rng, true, Math.min(rng.between(2, 5), rng.between(1, 5))); }while (latestGenerated.length() <= 2 || latestGenerated.length() >= 11); dest.append(latestGenerated); } } }
/** * Just as above, yet with symbolic group name. * * @throws NullPointerException if there is no group with such name */ public Matcher matcher(MatchResult res, String groupName) { Integer id = res.pattern().groupId(groupName); if (id == null) throw new IllegalArgumentException("group not found:" + groupName); int group = id; return matcher(res, group); }
/** * Returns a matcher for a match result (in a performance-friendly way). * <code>groupId</code> parameter specifies which group is a target. * * @param groupId which group is a target; either positive integer(group id), or one of MatchResult.MATCH,MatchResult.PREFIX,MatchResult.SUFFIX,MatchResult.TARGET. */ public Matcher matcher(MatchResult res, int groupId) { Matcher m = new Matcher(this); if (res instanceof Matcher) { m.setTarget((Matcher) res, groupId); } else { m.setTarget(res.targetChars(), res.start(groupId) + res.targetStart(), res.length(groupId)); } return m; }
void append(MatchResult match, TextBuffer dest) { if (prefix != null) dest.append(prefix); if (index == null) return; //if(id==null) return; //??? int i = match.pattern().groupId(index); if (match.isCaptured(i)) match.getGroup(i, dest, modes); }
@Override public void appendSubstitution(MatchResult match, TextBuffer dest) { dest.append(lookup(match.group(0))); } }
public String value(MatchResult mr) { TextBuffer dest = Replacer.wrap(new StringBuilder(mr.length())); appendSubstitution(mr, dest); return dest.toString(); }
@Override public void appendSubstitution(MatchResult match, TextBuffer dest) { if(match instanceof Matcher) { wordMatcher.setTarget((Matcher)match, 1); } else { wordMatcher.setTarget(match.targetChars(), match.start(1) + match.targetStart(), match.length(1)); } while (wordMatcher.find()) { wordMatcher.getGroup(MatchResult.PREFIX, dest); dest.append(lookup(wordMatcher.group())); wordMatcher.setTarget(wordMatcher, MatchResult.SUFFIX); } wordMatcher.getGroup(MatchResult.TARGET, dest); } }
void append(MatchResult match, TextBuffer dest, boolean pass) { if (!pass) { if (prefix != null) dest.append(prefix); if (index == null) return; int i = index; if (i >= match.pattern().groupCount()) return; if (match.isCaptured(i)) match.getGroup(i, dest, modes); } }