2009-07-25 16 views
0

我試着做以下事情:使用正則表達式匹配具有以下模式「@用戶名」的所有字符串正則表達式C#和RichTextBox的

1)< <做我得到了圖案@([A-z09_-]){4,20}

2)解析從富文本框中的文本和上色這些模式「@somethign」在色彩

3)讓他們點擊&點擊插入文本框(點擊的字符串只有當這是可能的,而不噸代碼時&庫)

好。多數民衆贊成基本上.. ..任何幫助表示讚賞:)' 乾杯:)

回答

2

使用正則表達式查找「​​@username」的所有發生,並將它們存儲在集合中。然後通過這個集合迭代,並做到這一點:

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

注意此使用此處發現了一個擴展的RichTextBox:Link。 (SetSelectionLink不在香草richtextbox類中。)