Java Code Examples for java.util.regex.Matcher#find()
The following examples show how to use
java.util.regex.Matcher#find() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: TextileAdapter.java From sailfish-core with Apache License 2.0 | 6 votes |
private static String removeByRegex(String inputString, String regex) { Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(inputString); StringBuilder sb = new StringBuilder(inputString); Set<String> wrapped = new LinkedHashSet<>(); while (matcher.find()) { wrapped.add(matcher.group()); } for (String str : wrapped) { int from = -1; int to = -1; while ((from = sb.indexOf(str)) != -1) { to = from + str.length(); sb.replace(from, to, ""); } } return sb.toString(); }
Example 2
Source File: SQLQuery.java From xyz-hub with Apache License 2.0 | 6 votes |
public static SQLQuery replaceNamedParameters( String query, Map<String, Object> namedParameters ) { // replace #{namedVar} in query with ? and appends corresponding parameter from map namedParameters Pattern p = Pattern.compile("#\\{\\s*([^\\s\\}]+)\\s*\\}"); SQLQuery qry = new SQLQuery(); Matcher m = p.matcher( query ); while( m.find() ) { String nParam = m.group(1); if( !namedParameters.containsKey(nParam) ) throw new IllegalArgumentException("sql: named Parameter ["+ nParam +"] missing"); qry.addParameter( namedParameters.get(nParam) ); } qry.append( m.replaceAll("?") ); return qry; }
Example 3
Source File: StringHelper.java From stategen with GNU Affero General Public License v3.0 | 6 votes |
public static List<EnumMetaDada> string2EnumMetaData(String data) { if (data == null || data.trim().length() == 0) return new ArrayList(); //enumAlias(enumKey,enumDesc),enumAlias(enumDesc) List<EnumMetaDada> list = new ArrayList(); Pattern p = Pattern.compile("\\w+\\(.*?\\)"); Matcher m = p.matcher(data); while (m.find()) { String str = m.group(); Matcher three_m = three.matcher(str); if (three_m.find()) { list.add(new EnumMetaDada(three_m.group(1), three_m.group(2), three_m.group(3))); continue; } Matcher two_m = two.matcher(str); if (two_m.find()) { list.add(new EnumMetaDada(two_m.group(1), two_m.group(1), two_m.group(2))); continue; } throw new IllegalArgumentException("error enumString format:" + data + " expected format:F(1,Female);M(0,Male) or F(Female);M(Male)"); } return list; }
Example 4
Source File: ApkUtility.java From supermonkey with Apache License 2.0 | 6 votes |
private static String getAaptResult(String sdkPath, String apkPath, final Pattern pattern) { try { final File apkFile = new File(apkPath); final ByteArrayOutputStream aaptOutput = new ByteArrayOutputStream(); final String command = getAaptDumpBadgingCommand(sdkPath, apkFile.getName()); Process process = Runtime.getRuntime().exec(command, null, apkFile.getParentFile()); InputStream inputStream = process.getInputStream(); for (int last = inputStream.read(); last != -1; last = inputStream.read()) { aaptOutput.write(last); } String packageId = ""; final String aaptResult = aaptOutput.toString(); if (aaptResult.length() > 0) { final Matcher matcher = pattern.matcher(aaptResult); if (matcher.find()) { packageId = matcher.group(1); } } return packageId; } catch(IOException e) { throw new RuntimeException(e); } }
Example 5
Source File: GPPermissionHandler.java From GriefPrevention with MIT License | 6 votes |
public static void addEventLogEntry(Event event, Location<World> location, Object source, Object target, Subject permissionSubject, String permission, String trust, Tristate result) { if (GriefPreventionPlugin.debugActive) { String sourceId = getPermissionIdentifier(source, true); String targetPermission = permission; String targetId = getPermissionIdentifier(target); if (!targetId.isEmpty()) { // move target meta to end of permission Matcher m = PATTERN_META.matcher(targetId); String targetMeta = ""; if (!permission.contains("command-execute")) { if (m.find()) { targetMeta = m.group(0); targetId = StringUtils.replace(targetId, targetMeta, ""); } } targetPermission += "." + targetId + targetMeta; } if (permissionSubject == null) { permissionSubject = GriefPreventionPlugin.GLOBAL_SUBJECT; } GriefPreventionPlugin.addEventLogEntry(event, location, sourceId, targetId, permissionSubject, targetPermission, trust, result); } }
Example 6
Source File: DefaultInspectionToolPresentation.java From consulo with Apache License 2.0 | 6 votes |
public static String stripUIRefsFromInspectionDescription(String description) { final int descriptionEnd = description.indexOf("<!-- tooltip end -->"); if (descriptionEnd < 0) { final Pattern pattern = Pattern.compile(".*Use.*(the (panel|checkbox|checkboxes|field|button|controls).*below).*", Pattern.DOTALL); final Matcher matcher = pattern.matcher(description); int startFindIdx = 0; while (matcher.find(startFindIdx)) { final int end = matcher.end(1); startFindIdx = end; description = description.substring(0, matcher.start(1)) + " inspection settings " + description.substring(end); } } else { description = description.substring(0, descriptionEnd); } return description; }
Example 7
Source File: CommonHelper.java From uavstack with Apache License 2.0 | 5 votes |
/** * 匹配 str 中符合表达式 p的第一个 * * @param p * @param str * @return */ public static String match(String p, String str) { Pattern pattern = Pattern.compile(p); Matcher m = pattern.matcher(str); if (m.find()) { return m.group(1); } return null; }
Example 8
Source File: FormattedTextImpl.java From sakai with Educational Community License v2.0 | 5 votes |
public String encodeUrlsAsHtml(String text) { // MOVED FROM Web Pattern p = Pattern.compile("(?<!href=['\"]{1})(((https?|s?ftp|ftps|file|smb|afp|nfs|(x-)?man|gopher|txmt)://|mailto:)[-:;@a-zA-Z0-9_.,~%+/?=&#]+(?<![.,?:]))"); Matcher m = p.matcher(text); StringBuffer buf = new StringBuffer(); while(m.find()) { String matchedUrl = m.group(); m.appendReplacement(buf, "<a href=\"" + unEscapeHtml(matchedUrl) + "\">$1</a>"); } m.appendTail(buf); return buf.toString(); }
Example 9
Source File: SSHInfrastructureHelper.java From scheduling with GNU Affero General Public License v3.0 | 5 votes |
public static String[] splitCommandWithoutRemovingQuotes(String command) { List<String> list = new ArrayList<>(); Matcher m = Pattern.compile("(\\\\\"\\\\\"|[^\\\\\"]\\S*|\\\\\".+?\\\\\")\\s*").matcher(command); while (m.find()) { list.add(m.group(1).replaceAll("\\\\\"", "\"")); } return list.toArray(new String[list.size()]); }
Example 10
Source File: ParameterBindingParser.java From mongodb-aggregate-query-support with Apache License 2.0 | 5 votes |
private void replaceParameterBindings(List<AbstractAggregateQueryProvider.ParameterBinding> bindings, Matcher valueMatcher, String prefix, boolean quoted) { while (valueMatcher.find()) { int paramIndex = Integer.parseInt(valueMatcher.group(PARAMETER_INDEX_GROUP)); bindings.add(new AbstractAggregateQueryProvider.ParameterBinding(paramIndex, quoted, prefix)); } }
Example 11
Source File: Utils.java From hottub with GNU General Public License v2.0 | 5 votes |
/** * Returns the default JTReg arguments for a jvm running a test without * options that matches regular expressions in {@code filters}. * This is the combination of JTReg arguments test.vm.opts and test.java.opts. * @param filters Regular expressions used to filter out options. * @return An array of options, or an empty array if no options. */ public static String[] getFilteredTestJavaOpts(String... filters) { String options[] = getTestJavaOpts(); if (filters.length == 0) { return options; } List<String> filteredOptions = new ArrayList<String>(options.length); Pattern patterns[] = new Pattern[filters.length]; for (int i = 0; i < filters.length; i++) { patterns[i] = Pattern.compile(filters[i]); } for (String option : options) { boolean matched = false; for (int i = 0; i < patterns.length && !matched; i++) { Matcher matcher = patterns[i].matcher(option); matched = matcher.find(); } if (!matched) { filteredOptions.add(option); } } return filteredOptions.toArray(new String[filteredOptions.size()]); }
Example 12
Source File: ServiceException.java From ballerina-integrator with Apache License 2.0 | 5 votes |
private static String generateMessage(String message, Object... args) { int index = 0; Matcher matcher = REPLACE_PATTERN.matcher(message); StringBuffer sb = new StringBuffer(); while (matcher.find()) { matcher.appendReplacement(sb, Matcher.quoteReplacement(String.valueOf(args[index++]))); } matcher.appendTail(sb); return sb.toString(); }
Example 13
Source File: ValueFilterCursor.java From tddl with Apache License 2.0 | 5 votes |
protected boolean processLike(Object column_value, Object v) { if (!(v == null || v instanceof String)) {// TODO shenxun // 丢异常才对,但老实现丢异常会出现无法关闭cursor的问题。所以返回false. return false; } String colValString = ""; if (column_value != null) { colValString = String.valueOf(column_value); } String tar = (String) v; if (tarCache == null || !tarCache.equals(tar)) { if (pattern != null) { throw new IllegalArgumentException("should not be here"); } tarCache = tar; // trim and remove %% tar = TStringUtil.trim(tar); tar = TStringUtil.replace(tar, "\\_", "[uANDOR]"); tar = TStringUtil.replace(tar, "\\%", "[pANDOR]"); tar = TStringUtil.replace(tar, "%", ".*"); tar = TStringUtil.replace(tar, "_", "."); tar = TStringUtil.replace(tar, "[uANDOR]", "\\_"); tar = TStringUtil.replace(tar, "[pANDOR]", "\\%"); // case insensitive tar = "(?i)" + tar; tar = "^" + tar; tar = tar + "$"; pattern = Pattern.compile(tar); } Matcher matcher = pattern.matcher(colValString); return matcher.find(); }
Example 14
Source File: ExtractPattern.java From dremio-oss with Apache License 2.0 | 5 votes |
public static Match extract(Matcher matcher, String matchee, IndexType type, int index) { matcher.reset(matchee); switch (type) { case INDEX: case INDEX_BACKWARDS: List<Match> matches = new ArrayList<Match>(); while (matcher.find()) { matches.add(PatternMatchUtils.match(matcher)); } int length = matches.size(); int i = (type == INDEX_BACKWARDS) ? length - 1 - index : index; if (i < matches.size() && i >= 0) { return matches.get(i); } break; case CAPTURE_GROUP: if (matcher.matches()) { if (index >= 0 && index < matcher.groupCount()) { return PatternMatchUtils.groupMatch(matcher, index); } } break; default: throw new UnsupportedOperationException(type.name()); } return null; }
Example 15
Source File: DictMTLDCCEProperNames.java From pra with MIT License | 5 votes |
public boolean parseLine(String line){ Matcher m=pattern.matcher(line); if(!m.find()) return false; //get dictionary data and fix them up String[] targets=m.group(2).split("/"); for(int i=0;i<targets.length;i++){ dict.add(m.group(1).trim().toLowerCase() ,targets[i].trim().toLowerCase()); } return true; }
Example 16
Source File: SdkHttpUtils.java From jdcloud-sdk-java with Apache License 2.0 | 5 votes |
/** * Encode a string for use in the path of a URL; uses URLEncoder.encode, * (which encodes a string for use in the query portion of a URL), then * applies some postfilters to fix things up per the RFC. Can optionally * handle strings which are meant to encode a path (ie include '/'es * which should NOT be escaped). * * @param value the value to encode * @param path true if the value is intended to represent a path * @return the encoded value */ public static String urlEncode(final String value, final boolean path) { if (value == null) { return ""; } try { String encoded = URLEncoder.encode(value, DEFAULT_ENCODING); Matcher matcher = ENCODED_CHARACTERS_PATTERN.matcher(encoded); StringBuffer buffer = new StringBuffer(encoded.length()); while (matcher.find()) { String replacement = matcher.group(0); if ("+".equals(replacement)) { replacement = "%20"; } else if ("*".equals(replacement)) { replacement = "%2A"; } else if ("%7E".equals(replacement)) { replacement = "~"; } else if (path && "%2F".equals(replacement)) { replacement = "/"; } matcher.appendReplacement(buffer, replacement); } matcher.appendTail(buffer); return buffer.toString(); } catch (UnsupportedEncodingException ex) { throw new RuntimeException(ex); } }
Example 17
Source File: Utils.java From hottub with GNU General Public License v2.0 | 5 votes |
/** * Searches for a jvm pid in the output from "jcmd -l". * * Example output from jcmd is: * 12498 sun.tools.jcmd.JCmd -l * 12254 /tmp/jdk8/tl/jdk/JTwork/classes/com/sun/tools/attach/Application.jar * * @param key A regular expression to search for. * @return The found pid, or -1 if Enot found. * @throws Exception If multiple matching jvms are found. */ public static int tryFindJvmPid(String key) throws Throwable { OutputAnalyzer output = null; try { JDKToolLauncher jcmdLauncher = JDKToolLauncher.create("jcmd"); jcmdLauncher.addToolArg("-l"); output = ProcessTools.executeProcess(jcmdLauncher.getCommand()); output.shouldHaveExitValue(0); // Search for a line starting with numbers (pid), follwed by the key. Pattern pattern = Pattern.compile("([0-9]+)\\s.*(" + key + ").*\\r?\\n"); Matcher matcher = pattern.matcher(output.getStdout()); int pid = -1; if (matcher.find()) { pid = Integer.parseInt(matcher.group(1)); System.out.println("findJvmPid.pid: " + pid); if (matcher.find()) { throw new Exception("Found multiple JVM pids for key: " + key); } } return pid; } catch (Throwable t) { System.out.println(String.format("Utils.findJvmPid(%s) failed: %s", key, t)); throw t; } }
Example 18
Source File: BurpCertificateBuilder.java From SAMLRaider with MIT License | 5 votes |
private String getAlternativeType(String alternativeString) { String type = ""; // Content between Braces; Braces are escaped using double \\ Pattern patternType = Pattern.compile("\\(([^)]+)\\)$"); Matcher matcherType = patternType.matcher(alternativeString); if (matcherType.find()) { type = matcherType.group(1); } return type; }
Example 19
Source File: SpiderUtils.java From DHTSpider with GNU General Public License v2.0 | 4 votes |
public static List<Node> getNodesInfo(String src) throws UnsupportedEncodingException { List<Node> result = new ArrayList<Node>(); if (src != null) { Pattern pattern = Pattern.compile("5:nodes(.*)", Pattern.DOTALL); Matcher matcher = pattern.matcher(src); String nodesInfoStr = null; if (matcher.find()) { nodesInfoStr = matcher.group(1); } if (nodesInfoStr != null) { int start = nodesInfoStr.indexOf(":"); int nodesInfoLength = Integer.parseInt(nodesInfoStr.substring(0, start)); byte[] nodesInfo = new byte[nodesInfoLength]; nodesInfoStr = nodesInfoStr.substring(start + 1); try { byte[] nodesInfoSrc = nodesInfoStr.getBytes("utf-8"); for (int i = 0; i < nodesInfoLength; i++) { nodesInfo[i] = nodesInfoSrc[i]; } } catch (Exception e) { e.printStackTrace(); } for (int i = 0; i < nodesInfoLength / SpiderConstant.NODE_INFO_LENGTH_ON_DHT; i++) { Node node; byte[] nodeId = new byte[20]; String nodeIp; byte[] nodeIpBytes = new byte[4]; int nodePort; byte[] nodePortBytes = new byte[2]; for (int j = i * SpiderConstant.NODE_INFO_LENGTH_ON_DHT; j < (i + 1) * SpiderConstant.NODE_INFO_LENGTH_ON_DHT; j++) { if (j % SpiderConstant.NODE_INFO_LENGTH_ON_DHT <= SpiderConstant.NODE_INFO_ID_LAST_INDEX) { nodeId[j % SpiderConstant.NODE_INFO_LENGTH_ON_DHT] = nodesInfo[j]; } if (SpiderConstant.NODE_INFO_ID_LAST_INDEX < j % SpiderConstant.NODE_INFO_LENGTH_ON_DHT && j % SpiderConstant.NODE_INFO_LENGTH_ON_DHT <= SpiderConstant.NODE_INFO_IP_LAST_INDEX) { nodeIpBytes[j % SpiderConstant.NODE_INFO_LENGTH_ON_DHT - SpiderConstant.NODE_INFO_ID_LAST_INDEX - 1] = nodesInfo[j]; } if (SpiderConstant.NODE_INFO_IP_LAST_INDEX < j % SpiderConstant.NODE_INFO_LENGTH_ON_DHT && j % SpiderConstant.NODE_INFO_LENGTH_ON_DHT <= SpiderConstant.NODE_INFO_PORT_LAST_INDEX) { nodePortBytes[j % SpiderConstant.NODE_INFO_LENGTH_ON_DHT - SpiderConstant.NODE_INFO_IP_LAST_INDEX - 1] = nodesInfo[j]; } } long ip_temp = Long.parseLong(bytesToHexString(nodeIpBytes), 16); nodeIp = long2IpAdress(ip_temp); nodePort = Integer.parseInt(bytesToHexString(nodePortBytes), 16); node = new Node(nodeId, nodeIp, nodePort); result.add(node); } } } return result; }
Example 20
Source File: FileSteps.java From NoraUi with GNU Affero General Public License v3.0 | 3 votes |
/** * Checks that a file in the default downloaded files folder matches the given regexp. * * @param file * The name of the file * @param encoding * The file encoding * @param regexp * The pattern to match * @param conditions * List of 'expected' values condition and 'actual' values ({@link com.github.noraui.gherkin.GherkinStepCondition}). * @throws FailureException * if the scenario encounters a functional error * @throws TechnicalException * is thrown if you have a technical error (format, configuration, datas, ...) in NoraUi. * Exception with {@value com.github.noraui.utils.Messages#FAIL_MESSAGE_FILE_NOT_MATCHES} message (with screenshot, no exception) */ @Conditioned @Alors("Le fichier {string} encodé en {string} vérifie {string}(\\?)") @Then("The file {string} encoded in {string} matches {string}(\\?)") public void checkFile(String file, String encoding, String regexp, List<GherkinStepCondition> conditions) throws TechnicalException, FailureException { try { final Matcher m = Pattern.compile(regexp) .matcher(FileUtils.readFileToString(new File(System.getProperty(USER_DIR) + File.separator + DOWNLOADED_FILES_FOLDER + File.separator + file), encoding)); if (!m.find()) { new Result.Failure<>(file, Messages.format(Messages.getMessage(Messages.FAIL_MESSAGE_FILE_NOT_MATCHES), file, regexp), false, Context.getCallBack(Callbacks.RESTART_WEB_DRIVER)); } } catch (final IOException e) { new Result.Failure<>(file, Messages.format(Messages.getMessage(Messages.FAIL_MESSAGE_FILE_NOT_FOUND), file), false, Context.getCallBack(Callbacks.RESTART_WEB_DRIVER)); } }