使用 RichTextBox.Find 迴圈尋找並取代所有符合項目:
public int M_int_index = -1;
private int M_int_start, M_int_end;
M_int_index = 0;
while (M_int_index != -1)
{
M_int_start = 0;
M_int_end = richTextBox1.Text.Trim().Length;
M_int_index = richTextBox1.Find(textBox1.Text.Trim(), M_int_start, M_int_end, RichTextBoxFinds.None);
if (M_int_index == -1)
{
MessageBox.Show($"全部 '{textBox1.Text}' 已取代完畢。", "未找到", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
else
{
richTextBox1.SelectedText = textBox2.Text; // 取代為新字串
M_int_index += textBox1.Text.Length; // 移至下一個搜尋位置
}
}
string str = "abc def ghiklm opq";
string[] strArr = str.Split(' ');
ArrayList myList = new ArrayList();
foreach (string s in strArr)
myList.Add(s);
listBox1.DataSource = myList; // 可透過索引存取,如 arr[1]="def"
string result = input.Replace("abc", "***"); (單行完成,效能更佳)。List<string> list = str.Split(new[] {' '}, StringSplitOptions.RemoveEmptyEntries).ToList(); 使用泛型集合。ArrayList 為非泛型,需裝箱/拆箱,現代專案建議改用 List<T>。