0
私のテーブルには、JavaScriptコードを含むカラム(nvarchar(max))があります。私の例で見ることができるように、私は1行に2つの別々のjavascript呼び出しを持っています。StringReaderは私の検索のすべてのインスタンスを見つける
1行目:
(<a href="Javascript:TermDef(1000,'','451')">aaa</a>)<LI> <a href="Javascript:TermDef(1100,'','26')">bbb</a>
2行目:
(<a href="Javascript:TermDef(1200,'','551')">ccc</a>)<LI> <a href="Javascript:TermDef(1300,'','270')">ddd</a>
私は、文字列をループされ、次にStringReaderコードを持っているが、それは唯一の第一のインスタンスを検索します。このコードは、1行につき1つのインスタンスだけが検索されている場合に効果的です。
using (StringReader rowData = new StringReader(reader[0].ToString()))
{
string line;
while ((line = rowData.ReadLine()) != null)
{
startVal = 0;
if (line.IndexOf("Javascript:TermDef", startVal) > -1)
{
startVal = line.IndexOf("Javascript:TermDef", startVal);
endVal = line.IndexOf(">", startVal);
value = line.Substring(startVal, endVal - startVal - 1);
Console.WriteLine(value);
}
}
}
「JavaScript:TermDef」のすべてのインスタンスを検索するにはどうすればよいですか?
一度だけチェックするのではなく、 'startVal = endVal'を使用してループスルーします。 – Kateract