簡體   English   中英

如何在Java中獲取匹配的字符串?

[英]How to get matched string in Java?

嗯。我不是Java開發人員,但我正在編輯Java插件。

所以..基本上,此插件匹配^(/ $)|(/ cn /(.*)+$)模式並重定向到用戶。

以下是該插件的代碼片段。

if(uriPattern != null) {
    Pattern pattern = Pattern.compile(uriPattern); 
    Matcher matcher = pattern.matcher(request.getRequestURI());
    matcher.find();
    matchURI = matcher.matches();


}

if (matchURI && redirectTool.shouldRedirectRequest()) {
    //do something
}

如您所見,該模式與/或/ cn / [Everything]網址匹配。 當/匹配時如何獲取空字符串,而/ cn / [EVERYTHING]匹配時如何獲取cn?

我嘗試了matcher.group(),matcher.start()和matcher.end()...

matcher.group(1)/你的第一個子模式匹配時, matcher.group(2)/cn/whatever你的第二子模式匹配時。

而且您似乎不需要+和嵌套的括號。 我會把您的表達式寫得更簡單: ^(/$)|(/cn/.*$)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM