다음 결과를 얻으려면 java 정규식을 사용하려는 다음 문자열이 있습니다.Java Regex에서 여러 일치 항목을 캡처하려면
String s = "/accounts/main/index/page.txt"
String[] result = {"/accounts/", "/accounts/main/", "/accounts/main/index/"};
즉, '상위 디렉토리 계층 구조'를 가져오고 싶습니다 (디렉토리 구조 일 필요는 없습니다).
참고 : "s"문자열은 동적으로 할당되므로 다른 수준의 디렉터리 일 수 있습니다.
나는 다음과 같은 것을 가지고 있지만, 내가 원하는 것을 반환 할 정규식을 컴파일하는 방법을 확신하지 못한다. 내가 원하는 건 단지 하나의 결과, 배열의 마지막 항목을 반환 할 수 있습니다 :
Pattern p = Pattern.compile("^/.+/"); //how do i set up this regex to give me required results.
String s = "/accounts/main/index/page.xhtml";
Matcher m = p.matcher(s);
while(m.find()){
System.out.println(m.group());
}
음, 그룹이나 그런 종류의 것을 사용할 수는 있지만. 그러나 이것이 내가 원하는 것을하기 때문에, 나는 이것을 정답으로 받아 들일 것입니다. – maress