如何突出显示不匹配的文本字符串 [英] How do I highlight a mismatch text string

查看:113
本文介绍了如何突出显示不匹配的文本字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我创建了两个名为RTBData的richtextbox,以及RTBInput并在分割后比较数据并使用循环进行比较。但选择颜色不起作用请建议突出显示差异的代码。



我尝试过:



  private   void  btn_end_Click(  object  sender,EventArgs e)
{
data = RTBData.Text.Split(' ');
input = RTBInput.Text.Split(' ');
for int j = 0 ; j < input.Length; j ++)
{
if (data.Length > input.Length)
{
if (data [j] ==输入[j])
{
richTextBox1.Text + = input [j] + ;
ss + = input [j] .Length + 1;
}
else if (data [j]!= input [j] )
{
string s = input [j];
Ehits ++;
richTextBox1.Text + = input [j] + ;
sl = ss + input [j] .Length;
richTextBox1.SelectionStart = ss;
richTextBox1.SelectionLength = richTextBox1.TextLength;
richTextBox1.SelectionColor = Color.Yellow;
}
}
}

解决方案

  var  striff =(data [j] .Split( new   char  [] {' '})。除了(输入[j] .Split( new   char  [] {' '})))。ToList< string>(); 
var strDiff1 =(输入[j] .Split( new char [] {' '})。除外(data [j ] .Split( new char [] {' '})))。ToList< string>();





或者你可以直接使用如下

  string  strNew = data [j] -input [j]; 
// 然后你可以突出显示字符来自
// strNew.Split(new char [] {''})。ToList();


I have created two richtextbox named RTBData, and RTBInput and compare data after splitting and compare using loop. but the selection color not working in this please suggest code for highlighting the differences.

What I have tried:

private void btn_end_Click(object sender, EventArgs e)
        {            
            data = RTBData.Text.Split(' ');
            input= RTBInput.Text.Split(' ');
            for (int j = 0; j < input.Length; j++)
            {
                if (data.Length > input.Length)
                {
                    if (data[j] == input[j])
                    {
                        richTextBox1.Text +=input[j]+" ";
                        ss += input[j].Length+1;
                    }
                    else if (data[j] != input[j])
                    {
                        string s = input[j];
                        Ehits++;
                        richTextBox1.Text += input[j] + " ";
                        sl = ss + input[j].Length;
                        richTextBox1.SelectionStart = ss;
                        richTextBox1.SelectionLength = richTextBox1.TextLength;
                        richTextBox1.SelectionColor = Color.Yellow;
                    }
                }
            }

解决方案

var striff =(data[j].Split(new char[] { ' ' }).Except(input[j].Split(new char[] { ' ' }))).ToList<string>();
       var strDiff1 = (input[j].Split(new char[] { ' ' }).Except(data[j].Split(new char[] { ' ' }))).ToList<string>();



or you can direct use like below

 string strNew=data[j]-input[j];
// Then you can highlight characters from
// strNew.Split(new char[] { ' ' }).ToList();


这篇关于如何突出显示不匹配的文本字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆