代码之家  ›  专栏  ›  技术社区  ›  Nikola Sivkov

regexp c和richtextbox

  •  0
  • Nikola Sivkov  · 技术社区  · 17 年前

    我想做以下事情:

    1)使用regex匹配具有以下模式的所有字符串“@username”<<完成我得到了该模式 @([A-z09_-]){4,20}

    2)解析富文本框中的文本,并将这些图案用颜色“@somethign”上色。

    3)使它们在单击时可单击,以便在文本框中插入单击的字符串(只有在没有大量代码和库的情况下才可行)

    好。基本上就是这样……感谢您的帮助:) 干杯:

    1 回复  |  直到 17 年前
        1
  •  2
  •   Tamás Szelei    17 年前

    使用regexp查找“@username”的所有事件,并将它们存储在集合中。然后遍历此集合并执行以下操作:

    int startpos = 0;
    if ( ( startpos = richTextBox1.Find(name) ) > 0 )
    {
       richTextBox1.SelectionStart = startpos; 
       richTextBox1.SelectionLength = name.Length;
       richTextBox1.SetSelectionLink(true);
    }
    

    注意 这将使用此处找到的扩展RichTextBox : Link . (setSelectionLink不在Vanilla RichTextBox类中。)