iT邦幫忙

0

foreach 如何把 原始陣列值改變

各位大大好,小弟這邊有一個想試試看的方法
具體狀況是
有一組 一維字串陣列 Tag_array
有一組 二維字串陣列 Tag_array
一個用於紀錄第幾筆資料的 Log_array_Data

string[]    Tag_array = new string[100];
string[,]   Log_array = new string[1000,100];
UInt64 Log_array_Data = 0;

問題一
使用foreach後,由Tag_array內其中一格取得Serch_Tag
如果該格子是 null 我想放入一個特定字串
可是我根本不知道,這次是哪一格
請問要如何處理?
代碼中/新增TAG/那邊

問題二
跟問題一差不多
取得要放入的Log要對應在哪個Tag之下
/TAG位置/這格要怎麼取得

foreach (string Serch_Tag in Tag_array)//根據迴圈
{   if (Serch_Tag == null)                  //如果無此TAG(看到null)
    {   
        /*新增TAG*/
    }
    if (match.Groups[1].Value == Serch_Tag) //找到符合的TAG
    {
        /*在對應位置寫入LOG*/
        Log_array[Log_array_Data,/*TAG位置*/]=match.Groups[2].Value;  
        //這是Log
    }
}

謝謝

以下是用for寫出的同功能程式

for (UInt16 Tag_CNT = 0; Tag_CNT < Tag_array.Length; Tag_CNT++)
{
    if (Tag_array[Tag_CNT] == null)                     //如果無此TAG(看到null)
    {
    Tag_array[Tag_CNT] = match.Groups[1].Value;     //新增TAG
    }
    if (match.Groups[1].Value == Tag_array[Tag_CNT])    //找到符合的TAG
    {
    Log_array[Log_array_Y, Tag_CNT] = match.Groups[2].Value;    //在對應位置寫入LOG
    }
}
多設一個變數 index
迴圈內 index++
lazywayne iT邦新手 5 級 ‧ 2020-03-16 13:59:06 檢舉
恩對,有想過,不過還是用for迴圈解決了

尚未有邦友回答

立即登入回答