2012-05-04 11 views
1

私はJavaScriptで日常的に行っているVBでかなり単純なことを達成しようとしています。複数の出現を伴うVB.NETの文字列範囲

複数の出現を持つ2つの文字列(主にHTMLタグ)間のテキストを解析する必要があります。

サンプルデータ:

var result = string.split('<tag>')[2].split('</tag>')[0]; 

を私は得るように見える唯一の方法:私は単にこれを行うだろうJavaScriptで第二<タグ内のデータを>つかむしたい場合

<tag>test</tag> 
<tag>test2</tag> 
<tag>test3</tag> 

VBで動作するようになっているのは、次のようなものです...

Dim from = string.IndexOf("<tag>") 
Dim [to] = string.IndexOf("</tag>", from) 
Dim result = string.Substring(from + "<tag>".Length, [to] - from - "<tag>".Length) 

VBとすでにコードは比較してばかげて見える...私はこれが私の唯一の解決策であることがわかるまで2番目の出来事を把握したくなかった。ありがとう

答えて

2

VBでは、文字列の '分割'メソッドを使用してほぼ同じことができます。

Dim sx As String = "<tag>test</tag> <tag>test2</tag> <tag>test3</tag> " 
    Dim sp As String = sx.Split(New [String]() {"<tag>"}, StringSplitOptions.RemoveEmptyEntries)(1).Split(New [String]() {"</tag>"}, StringSplitOptions.RemoveEmptyEntries)(0) 
+0

あなたの応答の後、私はそれにより掘り...そして、あなたは私がのindexOf /サブストリングを使用しようとし、誤った「スプリット」機能を使用していた:)正しい判明。 ソリューション: Regex.Split(文字列、 " ")(1).Splitを("")(0) – bfritz

+0

ここ分割と私の新しい問題を確認してください。http://stackoverflow.com/questions/10458032/奇妙な結果 - 時分割文字列 - VBネット – bfritz

+0

シャープなリプレイ:-) – sarepta

関連する問題