2011-07-11 77 views
1

我需要將一個變量拆分爲3個變量。例如,我有一個名爲Data的變量,它包含AAA00000001。我需要將它們分成「AAA」,「0000000」和「1」。我看了一下Split()函數,但沒有爲這種情況得到一個明確的例子。我需要這樣做的原因是因爲我想將這3個變量存儲到MySQL數據庫的字段中。VB:需要幫助將一個字符串拆分爲3個變量

+0

您是否想讓它分裂? – SLaks

+0

這裏有什麼要求......字母,然後是一定數量的零,然後是另一個非零數字? – Fosco

+0

我在問題中說過:我需要讓它們在「AAA」,「0000000」和「1」之間分割 –

回答

1

假設字符串總是完全一樣的長度,需要在同一個地方被拆分,可以使用Substring()

dim s as String = "AAA00000001" 

dim s1 as String = s.Substring(0, 3) 
dim s2 as String = s.Substring(3, 7) 
dim s3 as String = s.Substring(10) 

如果它們不總是相同的長度,您可能需要使用正則表達式。

+0

謝謝。謝天謝地,他們永遠都是一樣的長度。 RegEx嚇到我:/ –

2

這三個子變量總是相同的長度

如果是這樣,你可以使用Substrings

Dim substring1 As String = Data.Substring(0, 3) 
Dim substring2 As String = Data.Substring(3, 7) 
Dim substring3 As String = Data.Substring(10, 1) 
+0

是的,它們的長度始終相同。 11個字符長 –

+0

長度也適用於子字符串。示例中的最後一位數字是1,但如果您希望此數字增加,影響零的中間子字符串,則必須使用另一個拆分方法(如Regex)。 – JYelton

+0

不,數字將始終爲1或0.如開或關。 –

1

Split會根據一個字符或一組字符將您的字符串分開。在這裏不合適,那就是除非你總是在分裂0000000,我懷疑你是誰。

如果您知道前3個字符將永遠是您的第一個組,然後是您的下一個字符,最後一個字符,您的最終組,您可以做這樣的事情。

這使用Substring函數,例如,

Dim yourString as String = "AAA00000001" 
Dim c1 As String = yourString.Substring(0, 3) 
Dim c2 As String = yourString.Substring(3, 7) 
Dim c3 As String = yourString.Substring(10, 1) 
相關問題