방개
비밀번호를 잊어버리셨나요?

질문

주소에서 번지수만 따로 분리 하는 문자열 질문입니다.

    • 글자 크기

001.jpg

 

 

이런식으로 번지수만 따로 분리하려고 합니다. 근데 문자열 분리할 수 있는 코드가 너무 많아 가방끈이 짧은 제가 코드를 아무리짜도

 

제대로 수행이 되지 않아 질문드립니다. 대략 제가 방법을 생각해봤는데 이런식으로 구성해봤습니다.

 

주소의 가장 오른쪽 맨끝 뒷자리에서 왼쪽으로 공백까지만 갖고와 변수에 담은 다음에  그 변수에서 공백을 없애고

-이 포함되어있는경우는 본번과 부번을 각각 나누고 -이 없는경우는 본번으로만 하려고 합니다.

 

이경우 코드를 어떻게 짜야할까요? 답변주시면 감사하겠습니다. 

    • 글자 크기
댓글 4
  • 2020.11.12 15:51 댓글

    정규식을 사용하거나, 정규식이 어려우시면 StrSplit()으로 끊으셔도 되고, Loop, Parse를 사용해서 공백을 기준으로 제일 마지막에 있는 숫자를 가져오는것부터 해보세요.

    좀있다가 해보겠습니다.

  • 2020.11.12 18:30 댓글

     

    var := "서울시 무슨구 무슨동 123-456"
    
    번지 := StrSplit(var, " ")[StrSplit(var, " ").Count()]
    
    RegExMatch(번지, "(.*)-(.*)", out)
    
    본번 := out1
    부번 := out2
    
    MsgBox, % "번지: " 번지 "`n본번: " 본번 "`n부번: " 부번

     

  • 2020.11.12 18:34 댓글첨부 1

    이렇게 함수로 만들어두시면 편하겠죠.

     

    21.png

  • 2020.11.12 18:35 댓글

    지금 보니까 작대기가 없으면 번지 = 본번으로 해야하는군요. 조건문만 짜시면 되니까 이건 할수 있으실거라 생각합니다.

댓글 달기

서버에 요청 중입니다. 잠시만 기다려 주십시오...