private void btnExpand_Click(object sender, EventArgs e) { string delimiterString = (ddDelimiter.SelectedItem != null) ? ddDelimiter.SelectedItem.ToString() : ddDelimiter.Text; ExpandData data = new ExpandData(rtbFormat.Text, rtbStringSource.Lines, delimiterString); this.bgFormatProcessor.RunWorkerAsync(data); }
private void ProcessStringExpand(ExpandData expData, BackgroundWorker bgWorker, DoWorkEventArgs e) { bgWorker.ReportProgress(-1); int emptyLinesExcluded = 0; char[] delimiter = Utility.GetDelimiter(expData.Delimiter); StringBuilder sb = new StringBuilder(); for (int i = 0; i < expData.Lines.Length; i++) { if (expData.Lines[i].Trim().Length == 0) { emptyLinesExcluded++; continue; } string[] split = expData.Lines[i].Split(delimiter, StringSplitOptions.RemoveEmptyEntries); for (int j = 0; j < split.Length; j++) { sb.Append(split[j].Trim() + "\r\n"); } e.Result = sb.ToString(); } }