忽略字符串拆分C#中的大小写

时间:2017-09-22 18:33:09

标签: c# winforms

我有一个字符串构建器,我想在分割时忽略textbox2.Text的大小写(小写或大写)。

以下是我认为必须进行调整的代码行。

String[] subStrings = e.Item.Text.Split(new String[] { textBox2.Text }, StringSplitOptions.None);

StringSplitOptions只有两个选项,即None和RemoveEmptyEntries

我的完整程序如果我输入:“steph”,即使textbox2.text第一个字符是小写,“Stephen”中的文本“Steph”也会突出显示。

我的完整代码:

String[] subStrings = element.Text.Split(new String[] { textBox2.Text }, StringSplitOptions.);
if (subStrings.Count() >= 2)
{
    StringBuilder sb = new StringBuilder();
    sb.Append(subStrings[0]);
    sb.Append("<color=#0193C6>" + textBox2.Text + "</color>");
    sb.Append(subStrings[1]);
    for (int i = 2; i < subStrings.Count(); i++)
        sb.Append(textBox2.Text + subStrings[i]);
    element.Text = sb.ToString();
}

2 个答案:

答案 0 :(得分:2)

尝试使用Regex.Split。例如,

Regex.Split(textBox2.Text, "pattern", RegexOptions.IgnoreCase);

答案 1 :(得分:0)

尝试转换元素和textbox.Text ToLower()。

string elementString = element.Text;
            String[] subStrings = elementString.ToLower().Split(new[] { textBox2.Text.ToLower() }, StringSplitOptions.None);
            if (subStrings.Count() >= 2)
            {
                StringBuilder sb = new StringBuilder();
                sb.Append(subStrings[0]);
                sb.Append("<color=#0193C6>" + textBox2.Text + "</color>");
                sb.Append(subStrings[1]);
                for (int i = 2; i < subStrings.Count(); i++)
                    sb.Append(textBox2.Text + subStrings[i]);
                element.Text = sb.ToString();
            }