• ベストアンサー

行列の検索をするには?

こんにちは。 C#で悩んでいる者です。 ReadAllLinesで読み込んだ多数行にわたる文字列があります。 その文字列の「奇数行目」の中から特定の文字列を検索し、マッチした「奇数行目」の次の「偶数行目」を返すのはどうやるのでしょうか? 結構考えたのですが、わかりません。。。 例 「なえた」を検索: ・あのさー。 ・なんだ? ・なえたんだが ・よかったな。 そして「よかったな」を返す・・・。 あと追加で質問させていただくかもしれません;;; よろしくお願いします!

noname#120928
noname#120928

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

  • ベストアンサー
  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.1

File.ReadAllLines()の型はString[]、つまりStringの配列ですね。 配列のサイズはLengthプロパティに入っていますから、あとはforで回すだけです。 もっとも、ファイル自体の総行数が奇数のときは最終行にマッチしてしまった場合に例外が出るのでそれには対処しなければなりませんが。

noname#120928
質問者

お礼

ありがとうございます。 迷惑をおかけして本当にすみませんでした。

関連するQ&A

  • 指定した文字を検索

    エクセル2003を使っています。 VBAを使って文字を検索したいと思います。 (1)「あるセル」から見て最も近い、A列の「ある特定の文字が入っているセル」を検索しコピーし、別シートに貼り付ける。 (最初の「あるセル」というのはデータによって、セルの場所が変わります。但し、A列には入りません。 また、次の「特定の文字が入っているセル」というのは、データによってA列は変わりませんが、行番号は変わります。そして、特定の文字はA列に数個あります。そこであるセルから最も近いセルを検索するとします。) 例. 最初の「あるセル」をJ30とします。A列に入っている「時間」という文字を探すことにします。但し、「時間」というのはA列に数個あります。 そこで、「J30」から見て、最も近いセルの「時間」を検索してコピーし、別シートのセルA1に貼り付けます。 分かりにくいかもしれませんが、よろしくお願いします。

  • エクセルでの検索

    エクセルで、 SUBTOTAL関数で列の集計をしているシートで、 特定の行を左から検索していった時に 最初にヒットする数値のセル位置を取得したいのです。 何か良い方法があれば、教えて下さい。 出来れば、マクロを使わない方法で宜しくお願いします。 (INDEX,MATCH関数のアスタリスク検索では文字列しかヒットしませんでしたので。)

  • エクセル関数で分からない事があります

    文字列の中に特定の文字を含んだものを検索し 検索でヒットしたものと同じ行にある 数字を全て合計した数を返したいのです。 COUNTIFを使って データの中から、文字列の中に特定の文字を含んだセルが 何個あるかは調べられたのですが INDEX、MATCH、IF、SUMIF色々試したのですが どうもうまくいきません・・・。 どなたか関数技を伝授してください(>_<)

  • 検索を1度だけにしたい。

    以前も投稿しましたが、まだわからないので質問します。 現在Visual Stdio 2005を使用してダイアログを作成しています。 エディットボックスからキーワードを入力して、テキストファイルから1行ずつ読み込みながら検索して、見付かればリストボックスに追加しています。 ちなみに、ファイルの中身は   1,あいうえお   2,かきくけこ   3,さしすせそ   4,あいうえお という感じで、100000行近くあります。 そこで、エディットボックスに入力した文字列とテキストファイルから読み込んだ文字列はCString型で、Findを使って読み込んだ文字列に含まれるかをチェックしていますが、全角文字列を検索しようとすると何度も検索されてしまっています。 (例えば検索したい文字列が「あいう」の全角3文字だと、最初は「あいう」、次に「あい」、最後は「あ」と、後ろから1文字ずつ減っていって検索されています。) この検索を最初の1度だけにしたいです。何か良い方法があればお願いします。

  • EXCELの行列検索をおこなう関数

    EXCELに関する質問です。 条件で特定行・特定列を検索し、その値を取得する関数はありますでしょうか? たとえば、下の票で「え行」・「D列」を指定して、「8」という値をとってくる関数です。  ABCDE あ00012 い34500 う01004 え02080 お00000 基本的なことかもしれませんがご存知の方おられましたらご教授よろしくお願いいたします。

  • EXCELの検索で検索文字列以外が混ざった場合?

    EXCELで、検索文字列のあるセルの行番号を表示させたいのですが、 検索したいセルには検索したい文字列以外にも不特定な文字列が混ざっている場合、どういう式を作ればよいのですか?

  • EXCELの 編集 検索キーを使わず 検索したい

    EXCELの 編集 検索キーを使わず シート上で検索文字を指定して 検索された 全ての セルを表示したい。  第1表 CODEー名前表 CODEを探す A列 B列 C列 D列 1行 CODE 名前 CODE 2行 1001 あいうえお 1001 3行 1002 ああいうえ 1002 4行 1003 おあいうえ 1003 5行 1004 えおいうえ 1004 6行 1005 うえおあい 1005 7行 1006 うえああい 1006 第1表 CODEー名前表 から”あ”の含まれる全ての 名前 CODEを 第2表みたいに 作りたいのです 第2表 CODEを探す A列 B列 C列 D列 1行 検索する 名前 *あ* 2行 3行 検索された 名前 検索された CODE 4行 あいうえお 1001 5行 ああいうえ 1002 6行 おあいうえ 1003 7行 うえおあい 1005 8行 うえああい 1006 マクロを使わない方法で お願いします。 1:検索された 文字の足し算 2:文字の足し算をするごとに 1行増やす 3:改列 4:SUMPRODUCTで 文字の足し算は出来ますか?

  • 文字列から特定の文字だけを消す方法

    こんにちは。 C#で悩んでいる者です。 ReadAllLineで読み込んだ複数行の文字列があります。 これらの行の奇数行目は初めの数文字、偶数行目も初めの数文字を消去したいのです。 ただ、どちらも数文字というのは数が違います。 できれば具体的なソースなどもいただければ嬉しいです。 よろしくお願いします。

  • Excel2007でのマクロの設定について

    Excelのマクロについて質問です。 Excel2007でマクロを設定したいのですが以下の作業はマクロ化出来ますか? 1.特定の文字列を含む行の削除   例:(D11に特定の文字列があった場合、11行を全て削除する) 2.特定の文字列を含む行のうち、一部セルの変更   例:(A列に日付、B列に名前、C列に金額がある場合、B列を検索して該当した名前の列の日付のみ既存の日付の前日にする)   また、これは同時に複数の検索が出来ますか? ご回答お待ちしております。

  • エクセルで複数列・行の中にある文字の有無を探す関数

    エクセルで複数列×行の中に、指定した文字(引数)があるか探す関数を教えてください。 また、引数には曖昧な「*」が文字のお尻に追加されているものも含まれます。 <例:html* VLOOKUPやMATCHは、1列しか引数として見ないため、うまくいきません。 COUNTIFでは、完全一致はうまくいきますが、「*」が含まれるとうまくいきません。 よろしくお願いいたします。

専門家に質問してみよう