2012-03-23 173 views
0

vb.net 2.0有沒有類似於string range的任何函數?vb.net中的字符串範圍替代

我試圖在這裏實現的是從一個未知長度的字符串中提取一些文本。

例如。

given string = text text text mytext1 text text text text mytext2 text text text text 
expected string = mytext1 text text text text mytext2 

所以,我對於"mytext1""mytext2"索引。我正在尋找一種方法來獲取包含在這兩個字符串或索引之間的文本。

感謝

回答

2

嘛,這有什麼錯String.Substring?它適用於指數,所以如果你想找到由兩個單詞分隔的文本,你首先需要使用String.IndexOf找到它們各自的指數。

Dim from = given.IndexOf("mytext1") 
Dim [to] = given.IndexOf("mytext2") 
Dim result = given.Substring(from, [to] - from + "mytext2".Length) 

(注意To是一個保留字,所以我需要把標識在方括號...或使用其他標識符。;-))

+0

我想他只是要求在VB.Net中的函數的名稱。是的,他正在尋找的功能是'Substring' – squelos 2012-03-23 13:11:41

+0

@squelos儘管問題是* tagged ['substring]',所以我認爲OP知道這個方法。 – 2012-03-23 13:12:47

+0

@squelos我知道的**子串**功能..我只是看有沒有其他的功能,我提到的問題 – 2012-03-23 13:14:02

0

假設你結束索引是在結束「 myText2" 那麼你可以做到這一點...

Dim strExpectedString = Mid(strGivenString, intStartIndex, (intEndIndex - intStartIndex)) 

否則只是增加的長度‘myText2’到intEndIndex。

+0

沒有任何優勢,所有使用'中間'以上'子串'。 'Mid'僅出於向下兼容性的原因而存在,並且不適用於所有平臺(Compact Framework ...)。 – 2012-03-23 13:16:02