자바 - 충돌 정규 표현식에와 사항 String.split

mettleap :

나는 최근에이 문제를 가로 질러 와서 그것을 해결하는 방법을 모르겠어요. 나는 String 클래스에서, 우리는이 것을 알고 분할 정규식을 허용하고 정규식에 따라, 주어진 문자열이 다른 문자열로 분할 및 문자열 배열에 반환되는 방법을.

예를 들어, 내가 가지고있는 경우,

String s = "A,B,C";

내가 수행

System.out.println(Arrays.toString(s.split(",")));

이는 [A, B, C] 출력 콘솔을 출력한다.

이제 내 문자열 인 가정 해 봅시다

String s = "A,\"\"B\"\",\"\"C\"\",D";   //easier to read version: A,""B"",""C"",D

내가 문자열을 분할하는 다음과 같은 정규식을 사용하여,

String regex = ",|,\"\"|\"\",|\"\",\"\"";  // matches , OR ,"" OR "", OR "",""
System.out.println(Arrays.toString(s.split(regex)));

I는 [A ","B ","C, D]와 같은 출력을 얻는다. 분할은 어떻게 여기를 통해 노력하고 있습니다? 어떻게 내가 내 출력으로 [A, B, C, D] 얻을 그래서 내 정규식을 정의합니까?

참고 : 나는 (완전히 대체 방법 같은) 다른 방법으로 수행 할 수 있습니다 달성하기 위해 원하는 것을 알고 있지만 난 단지 내가이 경우에 사용하는 방법을 알고 싶어하기 때문에,이 문제에 대한 사항 String.split를 사용하고 싶습니다.

이 :

항상 smalest에 가장 큰에서 대안을 주문 :

String regex = "\"\",\"\"|,\"\"|\"\",|,";

추천

출처http://43.154.161.224:23101/article/api/json?id=197346&siteId=1