현재 긴 문자열을 표시하는 데 사용하는 서식있는 텍스트 상자가 있습니다. 다음 코드를 사용하여 문자열 내의 '중요'항목 목록을 굵은 글꼴로 선택합니다.richtextbox.find 중복 텍스트 선택
foreach (string item in selectionList)
{
if (item.Length != 0)
{
int charStart = richTextBox.Find(item);
richTextBox.SelectionFont = selectedFont;
richTextBox.Select(charStart, item.Length);
}
}
중복 된 항목을 텍스트에 표시하는 경우 가장 효율적인 방법을 알고 싶습니다. 예. (이 예제에서는 대문자로 강조 표시 할 텍스트) "BURGERS, CHIPS 및 CHIP을 주문하고 싶습니다."
이것은 단지 예제 데이터로, 사용하고있는 데이터에 몇 가지 중복이 있으므로 가능해야합니다. 이 상황을 처리합니다. (이이 같은 쿼리입니다 : duplicate selection in text() XPath selector하지만 C#에서)
가 현재 항목이 selectionList에 두 번 표시하지만 내 코드 만하여 RichTextBox에서 단어의 첫 번째 인스턴스를 찾아 마지막 인스턴스가 강조되지 않습니다. 저는 VS2013에서 C#과 .net 4.0을 사용하고 있습니다. 반환 될 때까지 -1
덕분에 많이, 아냐
가능한 중복 http://stackoverflow.com/questions/1244428/how-do-i-find-repeated-text-in-a- richtextbox) – MethodMan
그래, 멋지다! 나는 개별 단어보다는 구를 선택해야한다는 것을 제외하고는. 그리고 더 자세히 살펴보면 그 질문은 중복을 찾는 방법을 묻는 것입니다. List을 사용하여 항목을 보유하고 쉽게 중복을 찾을 수 있습니다. 이제는 텍스트에서 모든 인스턴스를 선택하는 가장 효율적인 방법을 알아야합니다. 그냥 첫 번째. –
그리고 실제로, 선택 목록에 중복이 필요없이 텍스트 상자 안의 각 복제본을 선택할 수 있다는 것이 좋습니다. 예 : SelectionList = (햄버거, 칩) 각 단어의 모든 인스턴스를 자동으로 선택할 수 있으면 좋을 것입니다. –