나는 https://xyz.com/abc/.../xyz/name_part이라는 URL을 가지고 있습니다. 이 부분을 https://xyz.com/abc/.../xyz 인 네임 스페이스 URI와 URL의 name_part 인 이름 부분으로 분리하여 두 부분으로 효율적으로 나누고 싶습니다. Java에서이 작업을 수행하는 가장 좋은 방법은 무엇입니까? 네임 스페이스 URI는 고정되어 있지 않으며 동적 일 수 있습니다. 건배URL의 마지막 부분을 동적으로 추출합니다.
0
A
답변
2
을 사용합니다. 가장 이해할 것을 위해 이동 어쩌면
String url = "https://xyz.com/abc/.../xyz/name_part";
int separator = url.lastIndexOf('/');
String namespacePart = url.substring(0, separator);
String namePart = url.substring(separator + 1);
또는 :
String url = "https://xyz.com/abc/.../xyz/name_part";
String[] pathSegments = URI.create(url).getPath().split("/");
String namePart = pathSegments[pathSegments.length - 1];
String namespacePart = url.replaceAll("/" + namePart + "$", "");
을 당신에게 가장 자연스러운 것 같다 무엇에 따라 달라집니다.
1
는 URL 클래스를 사용하여, 모든 관련 부분에 URL을 분할 : http://docs.oracle.com/javase/7/docs/api/java/net/URL.html 내가 아는 바로는
http://docs.oracle.com/javase/7/docs/api/java/net/URL.html#URL(java.lang.String)
5
, JDK의 URL 클래스는 사용자의 요구를 수용 할 수 있습니다.
URL url = new URL("https://test:[email protected]:7001/context/document?key1=val1&key2=val2");
확인 URL 클래스의 모든 getters
. 그들 중 일부는 다음과 같습니다 :이 상황에서
url.getProtocol();
url.getUserInfo();
url.getHost();
url.getPort();
url.getPath();
url.getQuery();
1
는 단순히 정규식
String url = "https://xyz.com/abc/.../xyz/name_part";
String[] a = url.split("/(?!.*/.*)");
System.out.println(Arrays.toString(a));
출력 그것은 효율성이 어떤 문제가 될 것이 매우 확률이 낮다
[https://xyz.com/abc/.../xyz, name_part]
관련 문제
- 1. URL의 마지막 부분을 동적으로 자바 스크립트 또는 PHP를 사용하여 삽입하십시오
- 2. Regex - URL의 마지막 부분을 가져 와서 .php를
- 3. htaccess 301 리디렉션 URL의 마지막 부분을 추가
- 4. URL의 마지막 부분을 얻기위한 정규 표현식
- 5. Javascript URL의 마지막 부분을 제거하는 Regex - 마지막 슬래시 뒤
- 6. URL의 마지막 디렉토리를 제거하십시오.
- 7. URI의 마지막 부분을 얻으십시오
- 8. PHP는 URL의 특정 부분을 에코합니다.
- 9. URL의 경로 부분을 분할
- 10. URL의 특정 부분을 반환
- 11. URL의 부분을 얻으십시오
- 12. PHP에서 URL의 첫 부분을 제거하는 방법은 무엇입니까?
- 13. URL의 마지막 부분을 유지하고 301 리디렉션하는 방법은 무엇입니까?
- 14. PHP에서 URL의 마지막 두 부분을 어떻게 가져 옵니까?
- 15. jstl을 사용하여 현재 URL의 마지막 부분을 제거하는 방법
- 16. URL의 정수 부분을 검색하는 방법은 무엇입니까?
- 17. htaccess가 URL의 특정 부분을 무시합니다.
- 18. URL의 첫 번째 부분을 제거하십시오
- 19. 애니메이션 마지막 부분을 발사하지
- 20. PHP는 여러 문자열에서 유사한 부분을 추출합니다.
- 21. 배열의 주어진 키를 기반으로 배열 부분을 추출합니다.
- 22. MATLAB에서 csv의 특정 행 부분을 추출합니다.
- 23. 입력에 따라 문자열의 특정 부분을 추출합니다.
- 24. 정규식을 사용하여 URL의 특정 부분을 추출
- 25. PrimeFaces에서 로그 파일의 마지막 부분을 동적으로 표시하는 방법
- 26. URI/URL의 마지막 폴더를 결정하십시오.
- 27. CURLINFO_CONTENT_TYPE이 마지막 URL의 콘텐츠 유형이됩니까
- 28. 문자열의 마지막 부분을 잘라 내기
- 29. bash - 문자열의 마지막 부분을 제거하십시오.
- 30. URL의 처음 두 부분을 제거하는 방법은 무엇입니까?
URL이나 URI 모두 마지막 경로 세그먼트를 추출하는 방법이 없습니다. 이 답변은 질문에 대답하지 않을 때 왜 그렇게 인기가 있습니까? –