iT邦幫忙

0

c# 我這段程式碼為何不能執行不了呢?

匿名 2012-08-12 10:33:325640 瀏覽

我想要將斷句後的結果,顯示在textbox3,但是跑出不來斷句結果,有誰可以幫我解答呢?

private void button4_Click(object sender, EventArgs e)
        {
          
           string sourcel = textBox2.Text; //宣告字串來源
            char[] ch1 = new Char[] { ',', '。', '?' }; // 遇到ch1 的字元就會切割成子字串
            string[] split1 = sourcel.Split(ch1);  //子字串們放在 split1的陣列裡
            
            foreach (string str in sourcel.Split(ch1))
            {
               textBox3.Text = str;
            }

        }
看更多先前的討論...收起先前的討論...
小成 iT邦高手 10 級 ‧ 2012-08-12 11:19:11 檢舉
foreach (string str in sourcel.Split(ch1))
你這邊用這樣的話
string[] split1 = sourcel.Split(ch1);
這就多了

然後
textBox3.Text = str;
每次迴圈就直接蓋掉一次,其次也沒有任何換行的動作
wiseguy iT邦超人 1 級 ‧ 2012-08-12 12:38:38 檢舉
這看起來是 copy 了範例或是同學的片斷關鍵程式碼,卻不知道它到底在幹嘛,就直接放進程式裡,看能不能矇出一個剛好想要的答案出來。搖頭
所以 6 跟 8 行動作重複,以及 textBox3.Text = str; 這樣寫只會看到最後一個被分割的子字串,樓主應該是都不知道吶。汗
小成 iT邦高手 10 級 ‧ 2012-08-12 12:42:12 檢舉
所以只有解釋一下~沒有給他完整的程式碼
讓他自己改吧...
匿名 檢舉
謝謝你們的指點,不得不承認確實是從網路跟書上擷取出來的程式碼。
但由於你們的指點,已測試出來囉!!
感恩!!
pantc328 iT邦研究生 1 級 ‧ 2012-08-13 08:44:36 檢舉
先從99乘法表跟金字塔開始練習
鐵殼心 iT邦高手 1 級 ‧ 2012-08-13 11:07:32 檢舉
pantc328提到:
先從99乘法表跟金字塔開始練習

和內塔跟金字塔有關連性嗎?疑惑
pantc328 iT邦研究生 1 級 ‧ 2012-08-13 11:32:22 檢舉
萬丈高樓平地起
總不能
寫幾行Code就問幾行Code
寫到哪裡問到哪裡
99,金字塔..看起來不怎麼樣。但訓練你的邏輯
從這邊開始,已經很看重了,還沒叫他從Hello World 開始學
4
pantc328
iT邦研究生 1 級 ‧ 2012-08-12 16:16:36

private void button4_Click(object sender, EventArgs e)
{

string sourcel = textBox2.Text; //宣告字串來源
char[] ch1 = new Char[] { ',', '。', '?' }; // 遇到ch1 的字元就會切割成子字串
string[] split1 = sourcel.Split(ch1); //子字串們放在 split1的陣列裡

foreach (string str in split1)
{
textBox3.Text = str;
}

}

4
huangsb
iT邦好手 1 級 ‧ 2012-08-13 08:20:22

請先用「單步偵錯」功能,你就會知道問題出在哪裡了。

2
louis1w
iT邦新手 3 級 ‧ 2012-08-13 10:58:43

textBox3.Text +=" "+str;//請問要空幾格阿?

小成 iT邦高手 10 級 ‧ 2012-08-13 11:09:01 檢舉

??你是發問人嗎?

匿名 檢舉

這樣是不能夠斷句的唷,只是把問號、逗號、句號 刪除

匿名 檢舉

請問要如何把Split砍掉的加回去呢?

我要發表回答

立即登入回答