2009-07-25 2 views
0

임 다음과 같은 일을 만들려고 : "@username"다음과 같은 패턴을 가지고 모든 문자열과 일치하는 정규 표현식을 사용하여정규식 C# 및하여 RichTextBox

1) < < 내가 패턴을 가지고 수행 @([A-z09_-]){4,20}

2) 서식있는 텍스트 상자에서 텍스트를 구문 분석하고 해당 패턴을 "@somethign"색으로 색칠

3)이 단추를 클릭하면 클릭 한 문자열을 텍스트 상자에 삽입 할 때 클릭 가능하게합니다 (많은 경우 코드없이 가능할 경우에만). & 라이브러리)

잘. 그건 기본적으로 .. 어떤 도움을 주신 :) ' 환호 :)

답변

2

"@ 사용자 이름"의 모든 발생을 찾아 컬렉션에 저장하는 데 regexp를 사용하십시오. 그런 다음이 컬렉션을 반복하고 이렇게이 여기 발견 확장하여 RichTextBox를 사용 것을

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

참고 : Link합니다. SetSelectionLink는 vanilla richtextbox 클래스에 없습니다.