示例#1
0
        private String getSentence(String[] fileSetences, SentenceIndexes indexes)
        {
            String[] wordsOfSentence = new String[indexes.getLength()];
            Array.Copy(fileSetences, indexes.FirstWordIndex, wordsOfSentence, 0, indexes.getLength());

            return(String.Join(" ", wordsOfSentence));
        }
示例#2
0
 private string toFileIdxDesc(string name, SentenceIndexes file1)
 {
     return(name + " " + file1.FirstWordIndex + " --> " + file1.LastWordIndexIndex);
 }
        private void highlightSentence(String fileName, int sentenceNum, RichTextBox fileContectBox, String sentence, SentenceIndexes sentenceIndexes)
        {
            String content = fileContectBox.Text;

            int  wordCounter             = -1;
            int  firstCharOfStartWordIdx = -1;
            int  lastCharOfEndWordIdx    = -1;
            bool isCurrentIndexOnWord    = true;
            bool isPreviousIndexOnWord   = true;
            int  firstCharOfWordIdx      = 0;

            for (int index = 0; index < content.Length; ++index)
            {
                isPreviousIndexOnWord = isCurrentIndexOnWord;

                if (Char.IsWhiteSpace(content, index))
                {
                    isCurrentIndexOnWord = false;
                }
                else
                {
                    isCurrentIndexOnWord = true;
                }
                if (isStartOfNewWord(isPreviousIndexOnWord, isCurrentIndexOnWord))
                {
                    firstCharOfWordIdx = index;
                }

                if (isEndOfWord(isPreviousIndexOnWord, isCurrentIndexOnWord))
                {
                    ++wordCounter;
                    if (wordCounter == sentenceIndexes.FirstWordIndex)
                    {
                        firstCharOfStartWordIdx = firstCharOfWordIdx;
                    }

                    if (wordCounter == sentenceIndexes.LastWordIndexIndex)
                    {
                        lastCharOfEndWordIdx = index - 1;
                        break;
                    }
                }
            }

            errorLabel.Text = String.Format("File = {0}, NR = {1}, firstIdx = {2} lastIdx = {3}",
                                            fileName,
                                            sentenceNum,
                                            firstCharOfStartWordIdx,
                                            lastCharOfEndWordIdx);

            if (firstCharOfStartWordIdx < 0 || lastCharOfEndWordIdx < 0)
            {
                string errMsg = "ERROR -> " + String.Format("File = {0}, NR = {1}, firstIdx = {2} lastIdx = {3}",
                                                            fileName,
                                                            sentenceNum,
                                                            firstCharOfStartWordIdx,
                                                            lastCharOfEndWordIdx);

                errorLabel.Text = errMsg;
                return;
            }

            //fileContectBox.Find(sentence, firstCharOfStartWordIdx, lastCharOfEndWordIdx, RichTextBoxFinds.WholeWord);
            fileContectBox.Select(firstCharOfStartWordIdx, lastCharOfEndWordIdx - firstCharOfStartWordIdx + 1);
            fileContectBox.SelectionBackColor = Color.Yellow;
        }