첨부 소스 코드는 나눔고딕코딩 폰트를 사용합니다.
728x90
반응형
728x170

▶ RichEditControl 클래스 : 정규식에 일치하는 문자열 찾기 예제

using System;
using System.Collections.Specialized;
using System.Linq;
using DevExpress.XtraRichEdit;
using DevExpress.XtraRichEdit.API.Native;

private RichEditControl richEditControl;

...

Document document = this.richEditControl.Document;

...

document.InsertSection(document.Range.Start);

DocumentRange[] documentRangeArray = Find(document, "\\b\\w{6}\\b");

StringCollection stringCollection = new StringCollection();

foreach(DocumentRange documentRange in documentRangeArray)
{
    stringCollection.Add(document.GetText(documentRange));
}

document.BeginUpdate();

var wordList = stringCollection.Cast<string>().Distinct().OrderByDescending(s => s);

foreach(string word in wordList)
{
    document.InsertText(document.Range.Start, word.ToString() + Environment.NewLine);
}

document.EndUpdate();

 

728x90

 

▶ RichEditControl 클래스 : 정규식에 일치하는 문자열 찾기

using System.Text.RegularExpressions;
using DevExpress.XtraRichEdit.API.Native;

#region 찾기 - Find(document, regularExpression)

/// <summary>
/// 찾기
/// </summary>
/// <param name="document">문서</param>
/// <param name="regularExpression">정규식</param>
/// <returns>문서 범위 배열</returns>
public DocumentRange[] Find(Document document, string regularExpression)
{
    Regex regex = new Regex(regularExpression);

    DocumentRange[] documentRangeArray = document.FindAll(regex);

    return documentRangeArray;
}

#endregion
728x90
반응형
그리드형(광고전용)
Posted by icodebroker

댓글을 달아 주세요