2012-03-23 12 views
0

string rangeに似た関数はありますか?vb.net 2.0 ??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つの文字列またはインデックスの間にラップされたテキストを取得する方法を探しています。

おかげで

答えて

2

まあ、String.Substringと間違って何ですか?インデックス上で動作するので、2つの単語で区切られたテキストを検索する場合は、まず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

+0

@squelos質問は*タグ付き*' [substring] 'ですが、私はOPがそのメソッドを認識していると思っていました。 –

+0

@squelos私は**サブリング**機能について知っています。私はちょうど、質問の中で言及したものに代替機能があるのを見ていました。 –

0

自分のエンドインデックスは、「の終わりであると仮定すると、 myText2" intEndIndexにmyText2 『、あなたはこれを行うことができます...

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

は、そうでない場合だけの長さを追加します』。

+0

'サブ'を使って 'Mid'を使用する利点は全くありません。 'Mid'は下位互換性の理由から存在し、すべてのプラットフォーム(Compact Framework ...)では動作しません。 –

関連する問題