아무것도몰라요dh
161
2020-11-26 19:36:30
4
131

java split 질문입니다.


String test1 = "서울특별시 OO구 OO동 1234-2 아무개아파트";

String test2 = "대전광역시 OO구 OO동 5678 머시기타워";


여기서 제가 원하는 값은

test1="서울특별시 OO구 OO동 1234-2";

test2 = "대전광역시 OO구 OO동 5678";


이렇게 반환을 하고싶은데

정규식을 써서 subString, split를 해봐도 만족할 만한 결과가 나오지않아서..도움을 부탁드립니다



0
  • 답변 4

  • noIdle
    57
    2020-11-26 19:49:30

    split(" ") 하구 slice(0, end-1) 하면되지않을까용

  • 아무것도몰라요dh
    161
    2020-11-26 19:54:44

    그 건물명이 들어올때도있고 안들어올 때도있습니다...ㅠㅠ

  • RWB
    408
    2020-11-26 21:59:18

    단순히 저 양식으로만 들어오는게 확실하다면, split을 통해 배열의 갯수를 판단하여 구분하는 정도로 해결할 수 있어보입니다.


    String test1 = "서울특별시 00구 00동 1234-2 아무개아파트";
    String test2 = "대전광역시 00구 00동 5678";
    
    int a = test1.split(" ").length;
    int b = test2.split(" ").length;
    
    // a = 5 -> 길이가 4보다 클 경우 a[0] ~ a[3]까지만 출력
    // b = 4 -> 그냥 출력


    기본적인 양식이 위와 같으면서, 건물명의 존재 유무만이 변수조건이라면 저 수준으로도 구분할 수 있겠지만, 00구 00동 사이에 이상한 값이 추가로 들어간다거나, "서울 특별시" 처럼 표기한다거나 하면 좀 더 구체적인 방식이 필요할 것 같습니다.

  • 아무것도몰라요dh
    161
    2020-11-26 22:26:02

    앗 감사합니다 ㅠㅠ

  • 로그인을 하시면 답변 을 등록할 수 있습니다.