當前位置: 首頁>>代碼示例>>Java>>正文


Java Matcher.group方法代碼示例

本文整理匯總了Java中java.util.regex.Matcher.group方法的典型用法代碼示例。如果您正苦於以下問題:Java Matcher.group方法的具體用法?Java Matcher.group怎麽用?Java Matcher.group使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在java.util.regex.Matcher的用法示例。


在下文中一共展示了Matcher.group方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: getTransferSize

import java.util.regex.Matcher; //導入方法依賴的package包/類
private void getTransferSize() {
    lastTransSize = -1;
    /**
     * If it's a start of data transfer response, let's try to extract
     * the size from the response string. Usually it looks like that:
     *
     * 150 Opening BINARY mode data connection for foo (6701 bytes).
     */
    String response = getLastResponseString();
    if (transPat == null) {
        transPat = Pattern.compile("150 Opening .*\\((\\d+) bytes\\).");
    }
    Matcher m = transPat.matcher(response);
    if (m.find()) {
        String s = m.group(1);
        lastTransSize = Long.parseLong(s);
    }
}
 
開發者ID:lambdalab-mirror,項目名稱:jdk8u-jdk,代碼行數:19,代碼來源:FtpClient.java

示例2: getJavaFileNameFromSource

import java.util.regex.Matcher; //導入方法依賴的package包/類
/**
 * Extracts the Java file name from the class declaration.
 * This method is intended for simple files and uses regular expressions,
 * so comments matching the pattern can make the method fail.
 */
static String getJavaFileNameFromSource(String source) {
    String packageName = null;

    Matcher matcher = modulePattern.matcher(source);
    if (matcher.find())
        return "module-info.java";

    matcher = packagePattern.matcher(source);
    if (matcher.find())
        packageName = matcher.group(1).replace(".", "/");

    matcher = classPattern.matcher(source);
    if (matcher.find()) {
        String className = matcher.group(1) + ".java";
        return (packageName == null) ? className : packageName + "/" + className;
    } else if (packageName != null) {
        return packageName + "/package-info.java";
    } else {
        throw new Error("Could not extract the java class " +
                "name from the provided source");
    }
}
 
開發者ID:AdoptOpenJDK,項目名稱:openjdk-jdk10,代碼行數:28,代碼來源:ToolBox.java

示例3: matchStrings

import java.util.regex.Matcher; //導入方法依賴的package包/類
/**
 * Main entry point.
 * @return {@code true} if the string matches against the pattern, or {@code false} otherwise.
 */
public boolean matchStrings(String str, Map<String, String> uriTemplateVariables) {
	Matcher matcher = this.pattern.matcher(str);
	if (matcher.matches()) {
		if (uriTemplateVariables != null) {
			// SPR-8455
			if (this.variableNames.size() != matcher.groupCount()) {
				throw new IllegalArgumentException("The number of capturing groups in the pattern segment " +
						this.pattern + " does not match the number of URI template variables it defines, " +
						"which can occur if capturing groups are used in a URI template regex. " +
						"Use non-capturing groups instead.");
			}
			for (int i = 1; i <= matcher.groupCount(); i++) {
				String name = this.variableNames.get(i - 1);
				String value = matcher.group(i);
				uriTemplateVariables.put(name, value);
			}
		}
		return true;
	}
	else {
		return false;
	}
}
 
開發者ID:vindell,項目名稱:spring-boot-starter-disruptor,代碼行數:28,代碼來源:AntPathMatcher.java

示例4: parse

import java.util.regex.Matcher; //導入方法依賴的package包/類
private void parse() {
	Matcher matcher = TWO_NUMBERS_PATTERN.matcher(input);
	if (matcher.matches()) {
		linkingNumber = Integer.parseInt(matcher.group(1));
		sequenceNumber = Integer.parseInt(matcher.group(2));
		fieldLinkTypeChar = matcher.group(3);
	} else {
		matcher = ONE_NUMBER_PATTERN.matcher(input);
		if (matcher.matches()) {
			linkingNumber = Integer.parseInt(matcher.group(1));
			fieldLinkTypeChar = matcher.group(2);
		}
	}
	if (fieldLinkTypeChar != null)
		fieldLinkType = LinkType.byCode(fieldLinkTypeChar);
}
 
開發者ID:pkiraly,項目名稱:metadata-qa-marc,代碼行數:17,代碼來源:FieldLinkAndSequenceNumberParser.java

示例5: getGID

import java.util.regex.Matcher; //導入方法依賴的package包/類
@Override
public String getGID(URL url) throws MalformedURLException {
    Pattern p = Pattern.compile("^https?://[wm.]*dribbble\\.com/([a-zA-Z0-9]+).*$");
    Matcher m = p.matcher(url.toExternalForm());
    if (m.matches()) {
        return m.group(1);
    }
    throw new MalformedURLException("Expected dribbble.com URL format: " +
            "dribbble.com/albumid - got " + url + "instead");
}
 
開發者ID:RipMeApp,項目名稱:ripme,代碼行數:11,代碼來源:DribbbleRipper.java

示例6: makeSingleEvent

import java.util.regex.Matcher; //導入方法依賴的package包/類
public Event makeSingleEvent(final String line, final MajorEvent ev) {
        final Matcher m = SIMPLE_CSV_PATTERN.matcher(line);
        if (m.find()) {
            final String rawYear = m.group(1);
            final LocalDate raceDay = makeRaceDay(rawYear, ev);
            final String winner = m.group(2);
            final Double odds = makeOdds(m.group(3));
//            System.out.println(winner + " won " + ev + " on " + raceDay + " at odds " + (odds == null ? " N/A " : odds));
            return makeEvent(ev, raceDay, winner, odds);
        } else {
            throw new IllegalArgumentException(line + " does not match, and it should");
        }

    }
 
開發者ID:hazelcast,項目名稱:betleopard,代碼行數:15,代碼來源:MakeSampleFiles.java

示例7: readHostFile

import java.util.regex.Matcher; //導入方法依賴的package包/類
/**
 * TODO
 * 讀取原始Host文件
 */
public static List<Host> readHostFile() throws IOException {
    List<Host> hostList = new ArrayList<>();
    Properties prop = new Properties();
    prop.load(HostFileService.class.getClassLoader().getResourceAsStream("host.properties"));
    String hostFilePath = prop.getProperty("host_file_path");
    //1 讀取整個文檔,將文本內容保存為字符串數組,並備份到hosts中
    BufferedReader bufferedReader = new BufferedReader(new FileReader(hostFilePath));
    BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter("hosts.bak"));
    String line = bufferedReader.readLine();
    final String IP_ADDRESS_REG = "[0-9]+.[0-9]+.[0-9]+.[0-9]+";
    Pattern pattern = Pattern.compile(IP_ADDRESS_REG);
    while (line != null) {
        HostFileService.hostFile.add(line);
        //2 將其中的純IP+Domain組合保存為Host對象,記錄所在行號
        Matcher m = pattern.matcher(line);
        if (m.find()) {
            Boolean enable = !line.trim().startsWith("#");
            String ipAddress = m.group();
            String domainName = line.substring(line.lastIndexOf(ipAddress));
            Set<String> labels = getLabels(line);
            hostList.add(Host.builder()
                    .line(HostFileService.hostFile.size() - 1)
                    .enable(enable)
                    .ipAddress(ipAddress)
                    .domainName(domainName)
                    .labels(labels).build());
        }
        bufferedWriter.write(line);
        line = bufferedReader.readLine();
        bufferedWriter.newLine();
    }
    bufferedReader.close();
    bufferedWriter.close();
    return hostList;
}
 
開發者ID:b3log,項目名稱:JHosts,代碼行數:40,代碼來源:HostFileService.java

示例8: getAtmPhysicalPortOperationalStatus

import java.util.regex.Matcher; //導入方法依賴的package包/類
public String getAtmPhysicalPortOperationalStatus(ConsoleAccess telnet,
                                                  String atmPhysicalPortIfName) throws IOException, AbortedException {
    StringTokenizer st = this.getResults(telnet, "show atm interface atm "
            + atmPhysicalPortIfName);
    Matcher matcher;

    while (st.hasMoreTokens()) {
        matcher = atmLinkStatusPattern.matcher(st.nextToken());
        if (matcher.matches()) {
            return matcher.group(1);
        }
    }
    throw new IOException("parse failed");
}
 
開發者ID:openNaEF,項目名稱:openNaEF,代碼行數:15,代碼來源:SuperHubTelnetUtil.java

示例9: fromString

import java.util.regex.Matcher; //導入方法依賴的package包/類
/**
 * Parses given string to create identifier. Numeric part may be
 * in a decimal or roman numeral.
 * @param idString String to parse
 * @param kind Kind of identified element
 * @return Created Identifier
 * @throws NumberFormatException if given idString cannot be parsed
 */
public static Identifier fromString(String idString, ElementKind kind) {
    if(idString.isEmpty()) {
        return new Identifier(0, "", kind);
    }

    Pattern splitter = Pattern.compile("^(\\d+|[IVXCDL]+|)(.*)$");
    Matcher m = splitter.matcher(idString);

    if (!m.matches()) {
        throw new NumberFormatException(String.format("idString '%s' " +
                "cannot be parsed", idString));
    }

    String digits = m.group(1);
    String chars = m.group(2).toLowerCase();

    int numeric = 0;

    if(RomanConverter.isRomanNumeral(digits)) {
        numeric = RomanConverter.romanToInteger(digits);
    } else if (!digits.isEmpty()) {
        numeric = Integer.parseInt(digits);
    }

    return new Identifier(numeric, chars, kind);
}
 
開發者ID:wgslr,項目名稱:OOP-ActParser,代碼行數:35,代碼來源:Identifier.java

示例10: loadEmitP

import java.util.regex.Matcher; //導入方法依賴的package包/類
protected void loadEmitP(String emitPFileName) throws IOException {
    emitP = new HashMap();
    for (Character s : STATES) {
        emitP.put(s, new HashMap(10000));
    }

    Pattern wordPattern = Pattern.compile("'\\\\u(.*?)': (.*?),");

    BufferedReader reader = new BufferedReader(new InputStreamReader(Tokenizer.class.getResourceAsStream(emitPFileName)));
    String line;
    Character currentType = null;
    while ((line = reader.readLine()) != null) {
        line = line.trim();
        if (line.isEmpty())
            continue;

        if (line.length() == 1 && STATES.contains(line.charAt(0))) {
            currentType = line.charAt(0);
            continue;
        } else {
            if (currentType == null) {
                throw new IllegalStateException("emit probability data must be followed the BEMS character");
            }
        }

        Map<Character, Double> stateP = emitP.get(currentType);
        Matcher matcher = wordPattern.matcher(line);
        if (matcher.find()) {
            String word = matcher.group(1);
            Double p = Double.valueOf(matcher.group(2));
            stateP.put((char) Integer.parseInt(word, 16), p);
        }
    }
}
 
開發者ID:hongfuli,項目名稱:elasticsearch-analysis-jieba,代碼行數:35,代碼來源:FinalSeg.java

示例11: getGrammarClass

import java.util.regex.Matcher; //導入方法依賴的package包/類
/**
 * Returns the simple name of the top level class defined in the given grammar content.
 */
public static String getGrammarClass(String grammarContent) {
	Matcher m = Pattern.compile("public\\ class\\ ([a-zA-Z0-9_]+)\\ ").matcher(grammarContent);
	if (m.find()) {
		return m.group(1);
	}
	return "unknown grammar class";
}
 
開發者ID:eclipse,項目名稱:n4js,代碼行數:11,代碼來源:Replacements.java

示例12: getOuter

import java.util.regex.Matcher; //導入方法依賴的package包/類
OuterSnippetsClassWrap getOuter(String className) {
    Matcher matcher = PREFIX_PATTERN.matcher(className);
    String cn;
    if (matcher.find() && (cn = matcher.group("class")) != null) {
        return classOuters.get(cn);
    }
    return null;
}
 
開發者ID:AdoptOpenJDK,項目名稱:openjdk-jdk10,代碼行數:9,代碼來源:OuterWrapMap.java

示例13: getUsePathForTemplate

import java.util.regex.Matcher; //導入方法依賴的package包/類
public static String getUsePathForTemplate(String patternCode, String templateName) {
    String path = StringUtils.EMPTY;
    Pattern pattern = Pattern.compile(String.format(PatternLabConstants.DATA_SLY_USE_TEMPLATE_PATTERN, templateName));
    final Matcher matcher = pattern.matcher(patternCode);
    while (matcher.find()) {
        path = matcher.group(1);
    }
    return path;
}
 
開發者ID:deepthinkit,項目名稱:patternlab-for-sling,代碼行數:10,代碼來源:HtlScriptParser.java

示例14: committedDiff

import java.util.regex.Matcher; //導入方法依賴的package包/類
public static long committedDiff() throws Exception {
    String res = (String) executeDcmd("vmNativeMemory", "detail.diff");
    String[] lines = res.split("\n");
    for (String line : lines) {
        Matcher matcher = totalLine.matcher(line);
        if (matcher.matches()) {
            String committed = matcher.group(1);
            return Long.parseLong(committed);
        }
    }
    throw new Exception("Could not find the Total line in the NMT output.");
}
 
開發者ID:lambdalab-mirror,項目名稱:jdk8u-jdk,代碼行數:13,代碼來源:NMTHelper.java

示例15: getDetailFromContentHeader

import java.util.regex.Matcher; //導入方法依賴的package包/類
private String getDetailFromContentHeader(String contentTypeHeader, Pattern pattern, String defaultValue, int group) {
    Matcher matcher = pattern.matcher(contentTypeHeader);
    return matcher.find() ? matcher.group(group) : defaultValue;
}
 
開發者ID:VideoDemo,項目名稱:M3U8_Video_demo,代碼行數:5,代碼來源:NanoHTTPD.java


注:本文中的java.util.regex.Matcher.group方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。