2012-02-15 3 views
0
$JAR_REPO/nlb/grbox/smnt.jar 

$와 first/사이의 문자열을 가져오고 싶습니다. 다른 문자열로 바뀝니다.정규 표현식 - 클래스 패스 위치 구문 분석

  1. 위에서 JAR_REPO를 얻는 정규식이란 무엇입니까?
  2. Regex를 사용하여 패턴 일치와 같은 실제 문자열을 얻을 수 있습니까 (모든 메소드) 문자열 JAR_REPO가 반환됩니까?

도와주세요.

감사합니다. 웰스

답변

2
\$([^/]+)/.* 

또는 자바 문자열로 :

Pattern pattern = Pattern.compile("\\$([^/]+)/.*"); 
Matcher matcher = pattern.matcher(yourstring); 
if (matcher.find()) { 
    String jarRepo = matcher.group(1); 
} 
재귀 구문 분석 방식의
+2

0 개 이상의 문자는 필요하지만 한 개 이상을 원하지 않을 수도 있습니다. \ $ ([^ /] +) 또한 그는 항상 줄의 시작 부분에있을 것이라고 말하지 않았으므로 ^로 시작하지 않는 것이 좋습니다. –

+0

맞습니다. 내 대답을 편집 할게. –

+0

감사합니다. 실제로 그것은 항상 초기입니다. 따라서^ –

0

이러한 유형이 해결 될 수 사용하여 통역 패턴 다음 JAR_REPO 문자열이 group(1) 될 것

"\\$([^/]+)/.*" 

논리와 구문 분석 접근법.