2010-07-09 2 views
0

VBScript의 split 함수를 사용하여 문자열을 분할했습니다. 아래 코드가 사용하고 있습니다.VB 스크립트 분할 문제

Dim inputText 
DIM resultArray 

inputText = "abc; def; ""xyz;123""" 
resultArray = Split(inputText, "; ") 

For i = 0 To UBound(resultArray) 
    resultArray(i) = Replace(resultArray(i), """", "")   
    resultArray(i) = Replace(resultArray(i), ";", "") 
    IF i = UBound(resultArray) THEN 
     Response.Write resultArray(i) 
    ELSE 
     Response.Write resultArray(i) & "; " 
    END IF 
Next 

나는 뒤에 공간을 제거합니다. 분할 기능에서 "xyz : 123"을 나눌 것입니다. 나는 원하지 않습니다.

둘 중 하나에 공백을 둡니다. split 함수 (Line # 4)에서 또는 큰 따옴표로 묶인 "xyz : 123"을 나눠서는 안됩니다.

어떤 제안을 어떻게 할 수 있습니까?

미리 감사드립니다.

+0

나는 처음에 나는; xyz : 123은 아무것도 쓰지 않고 스크립트의 최종 결과에도 필요하지 않습니다. 내가 여기 있니? – MUS

+0

@Umar Siddique : 나는 그 길을 걷지 않을 것입니다. 비슷한 다른 문제가 무엇인지 알고있는 사람. 그것은 거의 XHTML을 정규식으로 구문 분석하는 것과 같습니다 (누가 경보가 울리겠습니까?)). 직업에 적합한 도구는 아니지만 대안이 있습니다. – Rob

+0

@Rob 도와 주셔서 감사합니다. 예, 맞습니다. 그러나이 입력 문자열 형식은 최종 형식이며 다른 형식 일 수 없습니다. 그래서 짧은 해결책을 찾고 있습니다. – MUS

답변

3

의심스럽게 CSV 파일처럼 보입니다. 당신은 이것을 위해 ADO를 사용할 수 있습니다. Microsoft는 상당히 광범위하고 (매우 유용한) 기사를 가지고 있습니다. http://msdn.microsoft.com/en-us/library/ms974559.aspx

그들은 당신의 문제를 정확하게 설명하기 때문에 나는 당신의 해결책 일 것이라고 생각합니다. :)

+0

이 질문에 대한 완벽한 대답 인 것 같아요. CSV의 유사성을 180도 반대 방향으로 바라 보았을 때 큰 눈이었습니다. – Jeff