2010-07-09 75 views
0

我使用VBScript中的拆分功能拆分字符串。以下是我正在使用的代碼。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」,我不想這樣做。

要麼我給了空間後;在拆分函數(第4行)中,不應該拆分雙引號中的「xyz:123」。

任何建議我怎麼能做到這一點?

在此先感謝。

+0

我認爲首先我需要更換;在xyz:123沒有,因爲我也不需要這個在腳本的最終結果。我在這裏嗎? – MUS 2010-07-09 13:05:47

+0

@Umar Siddique:我不會走這條路。誰知道你遇到的其他類似問題。這幾乎就像使用正則表達式解析XHTML(好吧,誰的警報剛剛熄滅?))。這不是工作的正確工具,但有另一種選擇。 – Rob 2010-07-09 13:07:02

+0

@Rob感謝您的幫助。是的你是對的,但這個輸入字符串格式是最終的,它不可能是別的。所以我在尋找一個簡短的解決方案。 – MUS 2010-07-09 13:13:02

回答

3

這可疑看起來像一個csv文件。你可以嘗試使用ADO。微軟有一個相當廣泛(非常有用)的文章:http://msdn.microsoft.com/en-us/library/ms974559.aspx

因爲他們描述了你的問題,我認爲這可能就是你的解決方案。 :)

+0

我認爲這聽起來像是對這個問題的完美回答。在我看到180度相反的方向時,非常注意看到CSV的相似性。 – Jeff 2010-07-09 13:16:51