C# несколько представляют соответствие в виде строки

Как говорится в сообщении, вы передаете this, который является Tree<T>* const, к insertion, который ожидает Node<T>*.

Вы, вероятно, имели в виду root = insertion(root, value);.

(Есть много других проблем с этим кодом, но это источник этого конкретного сообщения об ошибке.)

5
задан nhahtdh 12 January 2014 в 08:57
поделиться

6 ответов

Используйте предварительный шаблон:-

"(? =A)"

Это находит любого, который сопровождается другим, не используя следующий A. Следовательно AAA будет соответствовать этому шаблону дважды.

13
ответ дан 18 December 2019 в 09:54
поделиться

Суммировать все предыдущие комментарии:

Dim rx As Regex = New Regex("(?=AA)")
Dim mc As MatchCollection = rx.Matches("BAAABBB")

Это приведет к результату, который Вы запрашиваете.

Править:
Вот версия C# (работающий с VB.NET сегодня, таким образом, я случайно продолжил VB.NET).

Regex rx = new Regex("(?=AA)");
MatchCollection mc = rx.Matches("BAAABBB");
4
ответ дан 18 December 2019 в 09:54
поделиться

Любое регулярное выражение может дать массив MatchCollection

0
ответ дан 18 December 2019 в 09:54
поделиться

Попробуйте это:

       System.Text.RegularExpressions.MatchCollection  matchCol;
       System.Text.RegularExpressions.Regex regX = new System.Text.RegularExpressions.Regex("(?=AA)");

        string index="",str="BAAABBB"; 
        matchCol = regX.Matches(str);
        foreach (System.Text.RegularExpressions.Match mat in matchCol)
            {
                index = index + mat.Index + ",";
            }                       

Содержание индекса - то, что Вы ищете с последней удаленной запятой.

0
ответ дан 18 December 2019 в 09:54
поделиться
0
ответ дан 18 December 2019 в 09:54
поделиться

Вы действительно ищете подстроки, которые являются только двумя символами долго? Если так, поиск 20 миллионов символьных строк будет медленным, какой regex Вы используете (или любая non-regex техника, в этом отношении). Если строка поиска длиннее, regex механизм может использовать алгоритм поиска как Boyer-Moore или Knuth-Morris-Pratt для ускорения поиска - дольше лучше на самом деле.

Между прочим, вид поиска, о котором Вы говорите, называют, перекрывая соответствия; я добавлю это к тегам.

0
ответ дан 18 December 2019 в 09:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: