public String findFirst(String originalStr, String regex) { if (StringUtils.isBlank(originalStr) || StringUtils.isBlank(regex)) { return StringUtils.EMPTY; } PatternMatcher matcher = new Perl5Matcher(); if (matcher.contains(originalStr, patterns.get(regex))) { return StringUtils.trimToEmpty(matcher.getMatch().group(0)); } return StringUtils.EMPTY; } }
private void saveGroups(MatchResult result, String namep, JMeterVariables vars) { for (int x = 0; x < result.groups(); x++) { vars.put(namep + "_g" + x, result.group(x)); //$NON-NLS-1$ } }
private static DdlResult parseTableName(String matchString, String schmeaName) { Perl5Matcher tableMatcher = new Perl5Matcher(); matchString = matchString + " "; if (tableMatcher.matches(matchString, PatternUtils.getPattern(TABLE_PATTERN))) { String tableString = tableMatcher.getMatch().group(3); if (StringUtils.isEmpty(tableString)) { return null; } tableString = StringUtils.removeEnd(tableString, ";"); tableString = StringUtils.removeEnd(tableString, "("); tableString = StringUtils.trim(tableString); // 特殊处理引号` tableString = removeEscape(tableString); // 处理schema.table的写法 String names[] = StringUtils.split(tableString, "."); if (names.length == 0) { return null; } if (names != null && names.length > 1) { return new DdlResult(removeEscape(names[0]), removeEscape(names[1])); } else { return new DdlResult(schmeaName, removeEscape(names[0])); } } return null; }
private static DdlResult parseDdl(String queryString, String schmeaName, String pattern, int index) { Perl5Matcher matcher = new Perl5Matcher(); if (matcher.matches(queryString, PatternUtils.getPattern(pattern))) { DdlResult result = parseTableName(matcher.getMatch().group(index), schmeaName); return result != null ? result : new DdlResult(schmeaName); // 无法解析时,直接返回schmea,进行兼容处理 } return null; }
private static DdlResult parseRename(String queryString, String schmeaName, String pattern) { Perl5Matcher matcher = new Perl5Matcher(); if (matcher.matches(queryString, PatternUtils.getPattern(pattern))) { DdlResult orign = parseTableName(matcher.getMatch().group(1), schmeaName); DdlResult target = parseTableName(matcher.getMatch().group(2), schmeaName); if (orign != null && target != null) { return new DdlResult(target.getSchemaName(), target.getTableName(), orign.getSchemaName(), orign.getTableName()); } } return null; }
/** * 实现<code>MatchResult</code>接口, 取得指定group的子串. * * @param group group号, 0代表整个匹配 * @return 指定group的子串 */ public String group(int group) { return result == null ? null : result.group(group); }
@Override public String getMatch(int groupnum) { return match == null ? null : match.group(groupnum); }
public String group(int arg0) { return mr.group(arg0); }
private static String createKeyFromMatchingGroups(final int matchGroups, final MatchResult match) { final StringBuilder sb = new StringBuilder(); for (int i = 2; i < matchGroups; i++) { sb.append(match.group(i)); } return sb.toString(); }
public void appendSubstitution(StringBuffer stringBuffer, MatchResult matchResult, int i, PatternMatcherInput patternMatcherInput, PatternMatcher patternMatcher, Pattern pattern) { String page = matchResult.group(1); stringBuffer.append("\"$xwiki.getURL(\""); stringBuffer.append(page.replaceAll("/", ".")); stringBuffer.append("\",\"view\")\""); } }
private String generateResult(MatchResult match) { StringBuilder result = new StringBuilder(); for (Object obj : template) { if(log.isDebugEnabled()) { log.debug("RegexExtractor: Template piece {} ({})", obj, obj.getClass()); } if (obj instanceof Integer) { result.append(match.group(((Integer) obj).intValue())); } else { result.append(obj); } } log.debug("Regex Extractor result = '{}'", result); return result.toString(); }
public void processMatch(MatchResult match) { if (logger.isDebugEnabled()) { logger.debug("processMatch() - matched portletWindowId \""+match.group(1)+"\""); } // obtain id in an object form // TODO: define an interface for id factory, otherwise what's the point of having an interface id, if one can only create a specific implementation? PortletWindowId windowId=new PortletWindowId(match.group(1)); // initiate portlet window rendering IPortletWindowManager windowManager=getPortletWindowManager(); windowManager.startPortletRendering(windowId); }
public String[] getVaribleNames(String s) { Perl5Util p5u=new Perl5Util(); List variableNames=new ArrayList(); String text=s; while(p5u.match("/{(.+?)}/", text)) { MatchResult result=p5u.getMatch(); String variableName=result.group(1); variableNames.add(variableName); text=p5u.postMatch(); } return (String[]) variableNames.toArray(new String[variableNames.size()]); }
public static String findFirst(String originalStr, String regex) { if (StringUtils.isBlank(originalStr) || StringUtils.isBlank(regex)) { return StringUtils.EMPTY; } PatternMatcher matcher = new Perl5Matcher(); if (matcher.contains(originalStr, patterns.get(regex))) { return StringUtils.trimToEmpty(matcher.getMatch().group(0)); } return StringUtils.EMPTY; } }
public String[] getVariableNamesForProcessor(String s, String processorName) { Perl5Util p5u=new Perl5Util(); List variableNames=new ArrayList(); String text=s; while(p5u.match("/{"+processorName+PROCESSOR_NAME_SERPARATOR+"(.+?)}/", text)) { MatchResult result=p5u.getMatch(); String variableName=result.group(1); variableNames.add(variableName); text=p5u.postMatch(); } return (String[]) variableNames.toArray(new String[variableNames.size()]); } /* (non-Javadoc)
public static String findFirst(String originalStr, String regex) { if (StringUtils.isBlank(originalStr) || StringUtils.isBlank(regex)) { return StringUtils.EMPTY; } PatternMatcher matcher = new Perl5Matcher(); try { if (matcher.contains(originalStr, patterns.get(regex))) { return StringUtils.trimToEmpty(matcher.getMatch().group(0)); } } catch (ExecutionException e) { throw new RuntimeException(e); } return StringUtils.EMPTY; } }
public List<String> getAllMatches(String content, String spattern, int group) throws MalformedPatternException { List<String> list = new ArrayList<String>(); PatternMatcherInput input = new PatternMatcherInput(content); Pattern pattern = patterns.addPattern(spattern); while (this.matcher.contains(input, pattern)) { MatchResult result = this.matcher.getMatch(); String smatch = result.group(group); list.add(smatch); } return list; }
private static String getHeaderValue(String headerName, String multiPart) { String regularExpression = headerName + "\\s*:\\s*(.*)$"; //$NON-NLS-1$ Perl5Matcher localMatcher = JMeterUtils.getMatcher(); Pattern pattern = JMeterUtils.getPattern(regularExpression, Perl5Compiler.READ_ONLY_MASK | Perl5Compiler.CASE_INSENSITIVE_MASK | Perl5Compiler.MULTILINE_MASK); if(localMatcher.contains(multiPart, pattern)) { return localMatcher.getMatch().group(1).trim(); } else { return null; } } }
protected String getIpAddress(String logLine) { Pattern incIp = JMeterUtils.getPatternCache().getPattern("\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}", Perl5Compiler.READ_ONLY_MASK | Perl5Compiler.SINGLELINE_MASK); Perl5Matcher matcher = JMeterUtils.getMatcher(); matcher.contains(logLine, incIp); return matcher.getMatch().group(0); }
public static void extractStyleURLs(final URL baseUrl, final URLCollection urls, String styleTagStr) { Perl5Matcher matcher = JMeterUtils.getMatcher(); Pattern pattern = JMeterUtils.getPatternCache().getPattern( "URL\\(\\s*('|\")(.*)('|\")\\s*\\)", // $NON-NLS-1$ Perl5Compiler.CASE_INSENSITIVE_MASK | Perl5Compiler.SINGLELINE_MASK | Perl5Compiler.READ_ONLY_MASK); PatternMatcherInput input = null; input = new PatternMatcherInput(styleTagStr); while (matcher.contains(input, pattern)) { MatchResult match = matcher.getMatch(); // The value is in the second group String styleUrl = match.group(2); urls.addURL(styleUrl, baseUrl); } } }