• ベストアンサー

特定の文章を取り出すには?

string strFind ="あいうえお<br>かきくけこ<br>さしすせそ"; 上記のような文があったとき、 a="あいうえお"; b="かきくけこ"; c="さしすせそ"; の様に、<br>を見つけたら<br>以前の文章を取り出し、変数へ代入したいのですが、 どういった方法を行えば良いでしょうか? 開発環境はC#です。

質問者が選んだベストアンサー

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.2

正規表現を使って分割してみてはいかがでしょう System.Text.RegularExpressions.Regex r = new System.Text.RegularExpressions.Regex( "(\\<br\\>)" ); string[] s1 = r.Split( strFind ); これで s1[0] = "あいうえお"; s1[1] = "<br>"; s1[2] = "かきくけこ"; s1[3] = "<br>"; s1[4] = "さしすせそ" といった具合に分割されます foreach( string w in s1 ) {   if ( w != "<br>" ) {     // ここで <br>以外の処理を記述   } } といった具合でどうでしょう

lotus1988
質問者

お礼

ありがとうございます。 無事に解決しました!

その他の回答 (1)

回答No.1

StringクラスのSplitメソッドを使用すると出来るでしょう。 ■以下サンプルコード ------------------------------------------------------------------- string strCsvData = "あいうえお<br>かきくけこ<br>さしすせそ"; // <br>区切りで分割して配列に格納する string[] strArrayData = strCsvData.Split('<br>'); // データを確認する foreach (string strData in strArrayData) { MessageBox.Show(strData); } ------------------------------------------------------------------- strArrayDataの配列内に あいうえお かきくけこ さしすせそ と入っています。

lotus1988
質問者

お礼

ありがとうございます。 無事に解決しました!

関連するQ&A